基于单片机的双足机器人系统设计

时间:2022-09-04 10:42:25

基于单片机的双足机器人系统设计

【摘要】机器人通常采用舵机作为关节连接件,本文提出了一种基于stc单片机的通用多关节机器人控制系统,以stc单片机和uart串行通信接口等部分构成硬件系统,用C语言开发了机器人串口调试软件及综合控制软件,结合PID算法控制双足机器人完成前后行走,翻跟头。

【关键词】STC单片机;串口通信;PID算法

1.系统整体设计

本设计的机器人系统由控制中心(MCU)模块、舵机驱动模块、电源管理模块、UART串口模块、超声波传感器模块等构成,整个系统构成一个闭环控制系统。硬件组成框图如图1所示。

图1 系统整体结构

2.系统硬件电路设计

2.1 主芯片选择

STC12C5410AD单片机是增强型8051单片机,单时钟/机器周期,工作电压5.5V一3.5V,工作频率范围0~35MHz,512字节片内数据存储器,10K字节片内Flash程序存储器,ISP(在系统可编程)/IAP(在应用可编程),可通过串口直接下载程序,EEPROM功能,6个16位定时/计数器,PWM(4路)/PCA(可编程计数器阵列,4路),8路10位A/D转换,SPI同步通信口。

2.2 舵机驱动模块

由于舵机的响应时间对机器人控制平衡很重要,为了实现其快速响应,将舵机的工作电压提高到+6V。为了减小此时间常数,还可以通过改变舵机的安装位置,加长力臂可以实现提高舵机的响应速度。舵机的输出转角大小与给定的PWM信号值成线性关系,以PWM信号为系统输入信号,改变PWM的占空比,实现舵机控制。

2.3 电源管理模块

电源管理芯片的好坏直接影响系统的稳定性。从整个系统的稳定可靠的角度出发,选择了一款低压差芯片TPS7350,该芯片最具特色的优点是当输出电流为100mA时,最大压差只有35mV,只需很少的器件就能满足应用要求。此外,充分使用该芯片的复位功能,减少了芯片的使用量,提高了系统的稳定性。为了减小系统运行过程中由于电机纹波对电源的干扰,特设计了大电容与大电感组成的电容容量为1410uF的LC滤波电路,对引入电源管理芯片的电源进行滤波,保证电源芯片的正常工作电压。

2.4 超声波传感器检测电路

超声波传感器电路主要是实现测距的功能。主要由超声波发射电路和接收电路两部分组成。

超声波接收电路主要使用集成电路CX20106A,它是一款红外线检波接收的专用芯片,常用于电视机红外遥控接收器。考虑到红外遥控常用的载波频率38kHz与测距的超声波频率40kHz较为接近,可以利用它制作超声波接收电路。实验证明用CX20106A接收超声波(无信号时输出高电平),具有很好的灵敏度和较强的抗干扰能力,具体见图3。CX20106A的第5脚的电阻决定接收的中心频率,220kΩ的电阻决定了接收的中心频率为40kHz。当CX20106A接收到40kHz的信号时,会在第7脚产生一个低电平下降脉冲,这个信号可以接到单片机的外部中断引脚作为中断信号输入。

3.控制系统设计

要实现机器人所完成各种动作需要用到多舵机分时控制原理。具体的,给每个舵机定义一个角度所对应的脉宽变量,并赋予初始值为舵机的中间角度。还要给定时器设定初值既是舵机PWM波脉宽初值。当每次定时器时间到产生溢出中断,进入中断服务子程序后,首先把所有的舵机控制输出口拉低清零,再给某一位置高,并给赋予PWM脉宽的定时时间。最后移位使下次进入中断时给下一位置高,相当于是将时间片传递给了下一个舵机驱动。其原理如图2所示。

根据经验舵机在运行过程中要从电源吸纳较大的电流,若舵机与单片机控制器共用一个电源,则舵机会对单片机产生较大的干扰。因此,舵机与单片机控制器采用两个电源供电,两者不共地,通过光耦来隔离,并且给舵机供电的电源最好采用输出功率较大的开关电源。该舵机控制器占用单片机的个SCI串口。串口用于接收上位机传送过来的控制命令,以调节每一个通道输出信号的脉冲宽度。MAX232为电平转换器,将上位机的RS232电平转换成TTL电平。

图2 舵机分时控制原理

4.系统软件编程与仿真

本系统需设计完成的软件包括:机器人串口调试上、下位机软件和机器人独立运行软件;单片机下位机软件。

机器人的单片机运行程序是包含有舵机的控制、完成各种动作的脚本程序、两个主动轮直流电机的驱动程序,还有一些基本的延时、初始化设置等程序。由于程序包含的内容较多,为了方便程序的组织,将各个功能模块分别做成一个独立的C程序,由主程序的头文件包含其他所有要用到的C程序的头文件,来调用其他C文件中的一些功能函数。程序这样设计比较方便将各个功能进行移植。通过在头文件中对各个端口物理地址的宏定义,在其C文件中实现了与物理地址的分离。当物理地址发生变化时,只需修改头文件中的宏定义即可。

5.总结

整个硬件系统成本低廉,由于可以无线与电脑通信,具有良好的二次开发接口。在此硬件基础上搭建的双足步行机器人,具有避障、测距、发音、语音识别、并和电脑具有无线通信的功能,具有好的展示效果和学习效果。

参考文献

[1]胡汉才.高档AVR单片机原理及应用.北京:清华大学出版社,2007.

[2]张培仁,等.十六位单片微处理器原理及应用(凌阳SPCE061A).北京:清华大学出版社,2005.

[3]梁磊,王树强,许芹.多路PWM信号产生算法研究.电气电子教学学报,2008;30(4):47―49.

[4]崔坤征,罗均,谢少荣,等.一种用于动态障碍物探测的超声波系统的研制.机电工程,2005;22(6):44―48.

[5]谢黎明,赵军,杨虹,等.红外线人体感应控制语音系统的研究.科学技术与工程,2008;8(7):1798―1801.

上一篇:ZN28型真空开关常见故障及处理方法分析 下一篇:基于集成稳压器的可调式直流稳压电源设计