机电综合实验——履带式机器人-实验报告..doc

机电综合实验——履带式机器人-实验报告..doc

实验名称:机电综合实验——履带式机器人 专业班级: 指导老师: 姓名: 学号: 一、实验要求 1、了解和掌握自动化系统集成的一般过程和方法,同学们在课程中逐步掌握使用、调试、维护自动化系统方面的能力。 2、了解AT89S52芯片的主要性能,学会分析和使用常用电子芯片、电子元件和仪器设备的能力。 3、掌握机器人机械工作方式,触觉开关及红外导航工作原理,掌握机器人尾随行走所需的闭环控制算法,学会将机械运动和自动化(利用软、硬件)紧密结合。 4、学会查阅科技参考资料,根据自己的设计任务和设计方法编制程序、调试程序软、硬件联机调试,达到设计要求收集实验数据,并对结论进行分析,写好实验报告。 二、硬件连接 设备硬件部分电机、直流电机控制板(主控芯片AVR)、C51教学板(AT89S52单片机)履带式机器人本体固结,只需要进行连线。接线时,AT89S52单片机板P10口与直流电机控制板RX(接收口)连接,P13口VIN接跳电位,GND接地线;电源线AVR板+5V接AT89S52单片机+5V,GND接地线;连接时注意各口颜色。 机器人程序通过连接到PC 机或者笔记本电脑的并口上的ISP 下载线来下载到教学板上的单片机内。下载线一端连接到PC 机或者笔记本的并行接口上,而另一端(小端)连接到教学板上的程序下载口上。 三、相关资料及问题 (一)、PWM 直流电机调速原理:通过AVR 单片机ATmega8直接产生PWM 波形经过电机驱动芯片L298 分别驱动两个直流电机,PWM 将占空比不同的脉冲变成不同的电压驱动直流电机转动从而得到不同的转速,且实现电机启动、停止、正反转等功能。 (二)、直流电机控制模块 1、控制板的使用说明 #define POSITIVE_DIR 1 //正向旋转 #define NEGATIVE_DIR 0 //反向旋转 #define LEFT_MOTOR 0 //左电机 #define RIGHT_MOTOR 1 //右电机 #define NOT_STOP 0 //不停止 #define STOP 1 //停止 #define BY_10MS 0 //时间控制系数 10毫秒倍率 #define BY_100MS 1 //100毫秒倍率 #define BY_1000MS 2 //1000毫秒倍率 #define NOT_CONTROL_TIME 3 //不控制时间 2、延时:i=12 ,i的最小延时单12 us void delay_nus(unsigned int i) { i=i/10; while(--i); } //延时n ms void delay_nms(unsigned int n) { n=n+1; while(--n) delay_nus(900); //延时 1ms,同时进行补偿 } 3、通过TTL串口驱动PWM直流电机驱动模块 void write_pwm(unsigned char bDirection, unsigned char bSide, unsigned char bStop, unsigned char TimeFactor, unsigned char Speed, unsigned char Time) { unsigned char Command; bSide = bSide 1; bStop = bStop 2; TimeFactor = TimeFactor 3; Command = bDirection | bSide | bStop | TimeFactor; //组合命令字节 soft_send_enable (); //允许软串口发送 EA=1; rs_send_byte(0xaa); //发送控制命令的头部,恒为0xaa rs_send_byte(Command); //发送命令字节,想要了解命令格式 rs_send_byte(Speed); //发送速度描述字节,0~255 rs_send_byte(Time); //发送时间倍率,0~255 rs_send_byte(0xbb); //发送控制命令的尾部,恒为0xbb while(rs_f_TI==0); //等待所有的命令发出完毕 EA=0; } 4、几个基本函数 驱动电机后退函数 原理:左电机正转,右电机反转,以同样的速度旋转,完成后退动作 参数:Speed:速度系数(0~255);TimeFactor:时间系数(X10ms,X100ms,X1000ms

文档评论(0)

1亿VIP精品文档

相关文档