MAX232芯片是RS-232标准串口设计的单电源电平转换芯片,使用+5v单电源供电,片外最低只需4个电容即可工作。引脚如图3.6(b)其引脚主要有三部分组成:
(1)电荷泵电路:由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。
(2)数据转换通道:由7、8、9、10、11、12、13、14脚构成两个数据通道。其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DB9插头;DB9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。
(3)供电:15脚GND、16脚VCC(+5v)。
图3.6 (a)上位机和单片机串行通信电路原理图
(b) MAX232引脚图
3.5本章小结
本章主要介绍了电控系统的硬件电路组成,主要由上位机,rs-232串口,L298N驱动芯片,51单片机组成,总体设计思想为PC机通过DB9 串行接口下位机串行口,通过MAX232电平转换芯片转成TTL电平,再与单片机的P3.0、P3.1口相连,构成串口通讯电路。上位机通过算法得出控制信号并将控制信号通过串口电路传给单片机,单片机I/O产生相应的环形脉冲信号,环形脉冲信号再经过L298N驱动芯片放大后驱动步进电机完成指定动作。和使用控制芯片相比编程难度加大,但成本降低,芯片利用率提高了。
4 软件设计
机械手的正常工作除了具备良好的机械结构和满足控制需要的硬件电路板外,一套完善的软件系统也是必不可少的。机械手的软件系统包括上位机软件设计和下位机软件设计两部分:操作者通过上位机界面设置控制参数,上位机通过串口通讯传送控制命令给下位机,控制命令包括电机的启停状态,四个步进电机的转向、速度、角度。下位机不断地检测上位机是否有控制命令传来,一旦检测到有命令传来,则下位机就进入相应的控制程序,执行完命令后再次处于检测状态。不管下位机处于何种状态,每当上位机有新的命令时,单片机就执行新的命令,这主要是防止机械手执行动作的过程中遇到突发状态,可以通过急停按钮使机械手停止工作。
4.1 上位机软件设计
其中上位机程序主要是使用VB语言实现了用户界面和串口通信功能,以及通过一定的算法计算出电机的控制信号。
4.1.1 上位机界面实现步骤
上位机界面主要用VB实现,该界面中主要用到的控件有命令按钮、文本框、标签和MSComm控件[15],为本论文实验编制上位机控制界面如图4.1所示:
图4.1 论文实验编制的上位机控制界面
其中命令按钮主要用来控制步进电机的运行和停止,文本框用来设置机械手工作的基本参数,如机械手的手臂、手腕和手爪长度,电机的运行速率,电机自动抓取物体时,目标点的坐标以及手动控制电机时,各个电机的转向和转动圈数,标签用来作一些注释和注意事项。
MSComm控件是是Microsoft公司提供的简化Windows下串行通信编程的ActiveX控件,它为应用程序提供了通过串行接口收发数据的简便方法,上位机的串口通讯主要通过该控件实现。最终
4.1.2 上位机串口通讯模块设计
上位机的串口通讯主要和MSComm控件有关, Mscomm控件提供了功能完善的串口数据的发送和接收功能,Mscamm控件具有两种处理方式:1事件驱动方式:由Mscomm控件的OnComm事件捕获并处理通信错误及事件;2查询方式:通过检查CommEvent属性的值来判断事件和错误[16]。
Mscomm控件的通信功能实现,实际上是调用了API函数,而API函数是由Comm.drv解释并传给设备驱动程序执行的,对于VB程序开发者只需知道Mscomm控件的属性和事件的用法即可以实现串口的操作。 AT89S51单片机全地形八足机器人机械手的设计(11):http://www.youerw.com/jixie/lunwen_2398.html