您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 机械/模具设计 > 基于PC控制的智能机械手无线控制系统
基于PC控制的智能机械手无线控制系统卓树峰黄净晴程智宾福建信息职业技术学院,福州350003摘要:在现在生产过程中,许多生产环境和工艺都要求机械手应具有无线控制和准确定位的能力。为此我们研究和开发了以单片机为核心的下位机底层控制系统和用VB开发的上位机(PC机)软件,两者之间的数据传送是利用以NRF9E5为核心的传输模块来实现。同时设计了直流电机定位系统以解决机械手的定位问题,提高了机械手的可靠性、智能性和控制精度。关键词:上位机;无线通信;下位机;定位系统;机械手引言随着科技的发展,生产技术和工艺的不断发展和改进,在某些方面,机械手已经逐渐取代了人类劳动,它既可以用于实际生产,满足装配作业内容改变频繁的重复操作,又可以用于教学实验和科学研究,使人直观地了解机器人结构组成、动作原理等,所以开发设计和研究机械手具有比较广泛的实际意义和应用前景。一、系统结构该系统由上位机软件、无线通信模块和下位机执行模块构成。系统结构框图如图1所示:1.上位机软件该机械手操作控制软件是采用高级语言VisualBasic(VB)编写的。主要完成两部分:一是机械手操作界面,通过对该界面的操作,可以实现上位机向无线通信模块传输指令和数据;二是数据串行通信,利用VB的串行控件Mscomm实现系统的串行通讯。该控件屏蔽了通信过程中的底层操作,通过设置、监视Mscomm控件的属性和事件,再结合Timer控件即可完成对串行口的初始化和数据的输入、输出工作。Mscomm控件的主要属性如下:(1)Commport设置并返回通讯端口号。端口号可以设置为1~16的任何数。(2)Setting设置并返回波特率、奇偶校验、数据位、停止位。(3)Portopen设置并返回通讯端口的状态,也可以打开和关闭端口。(4)Input从接收缓冲区返回和删除字符。该属性在运行时为只读。(5)InputLen设置并返回每次Input属性从接收缓冲区中读取的字符数。(6)Output向传送缓冲区写数据。要传送的数据可以是文本数据或二进制数据。(7)CommEvent返回最近的通讯事件或错误。只要有通讯错误或事件发生错误时就会产生Oncomm事件。CommEvent属性中存有该错误或事件的数值代码。2.无线通信模块本系统采用了以NRF9E5为核心的无线传输模块,该模块是一块具有433/868/915MHz高性能嵌入式无线模块,其特点是:多频道多频段,低工作电压(只有1.9~3.6V),最大发射功率+10dBm,高抗干扰GFSK调制,可跳频,数据速率50kbps,有独特的载波监测输上位机(PC机)无线传输模块无线传输模块单片机最小系统显示模板图1.系统结构框图出、地址匹配输出、数据就绪输出,有完整的多址通信协议和CRC校验,同时内置高性能51单片机(速度三倍于同主频的标准51单片机),被广泛地应用在无线遥控系统、机器人控制、工业数据采集系统等。该无线传输模块的功能是与PC机串口通信接收数据,接收到的数据经处理后,以无线的方式发射到下位机。其中核心芯片NRF9E5属于可编程器件,在硬件电路设计时,主要完成内部的UART串口与上位机通信的串口电路,由于该芯片内部没有ROM,因此在外部扩展了一片MICROCHIP公司的32K容量的SPI总线接口的25AA320程序存储器来存储程序。在上电时,NRF9E5通过内部SPI接口把25AA320中的程序自动的读到NRF9E5内部4KB的专用RAM中并开始执行。在软件设计时主要考虑有线和无线通信的协议和工作时序,这就要求在配置各个定时器和寄存器时,要保证传输时波特率和数据格式的一致,否则将接收到乱码或错误数据,影响下位机的动作。软件流程如图2:3.下位机执行模块该模块主要是以无线方式接收PC机发射的数据,同时将无线接收的数据通过串口传送给下位机系统执行,其原理框图如图3:下位机执行模块是由单片机为核心的控制系统构成,以有线方式将单片机与无线通信模开始无线传输模块初始化判断是否接收到上位机数据否是关闭串口,处理接收到的数据数据无线发射判断发射是否完成否是图2.无线发射程序流程图打开串口,等待接收数据图3.下位机执行模块原理框图串口通信发射模块接收模块下位机系统控制电机执行块联系起来接收PC机发出的指令和数据。为了提高通信的距离和数据传输的稳定,有线串行通信采用电平转换芯片MAX232,使数据以RS-232电平方式进行传输。在编写软件时,将无线通信模块中的NRF9E5工作频率设置为国际通用的数传频段433MHz,其串口与单片机串口通信波特率设置为19200bit/s。在下位机模块接收到数据后进行处理,确定机械手的运动方向和运动位移,再根据接收的控制指令去控制各部分电机的驱动控制系统。软件流程如图4、图5:二、直流电机定位系统该定位系统主要由单片机最小系统、功率放大模块、脉冲合成和原点处理电路、光电编码器等组成半闭环控制系统。其功能是将接收的数据转换成控制信号来驱动直流电动机旋转,并且使电机能够定位在指定的位置。系统结构框图如下图6所示:系统以AT89C52单片机最小系统为核心,当接收到PC机发送的数据时,单片机将把图6.控制系统结构框图单片机最小系统功率放大模块直流电动机增量式光电编码器位置反馈IN,A,B脉冲合成电路计数脉冲、原点信号关闭串口,打开无线收发器开始无线接收模块初始化判断是否接收到无线数据否是关闭无线收发器,处理接收到的数据打开串口发送判断传送是否完成否是图4.无线接收程序流程图开始单片机初始化和打开串口判断串口是否接收到数据否是关闭串口,处理显示数据判断显示是否完成否是图5.单片机处理流程图打开串口数据转换成控制信号来控制功率放大模块,驱动直流电动机旋转。功率放大模块由L298N和数字逻辑芯片组成,L298N是双极性H桥功率放大电路,输入信号IN1~IN4在电路中与单片机I/O口相连,通过软件对接收数据的处理,决定I/O的输出信号,最终控制直流电动机的正、反转或停止。在L298N内部有两个H桥电路,ENA和ENB是用来控制两路H桥是否工作的控制信号,为“1”,表示H桥开始工作;为“0”,表示H桥停止工作。同时芯片在供电时采用两种电压,其中VSS为芯片工作时本身的电压,VS为H桥驱动电机的工作电压。为了能够使直流电动机更加准确定位,设计时增加了闭环反馈环节,由光电编码器和脉冲合成电路构成。单片机在驱动直流电动机之前要将PC机发送的数据根据电机和编码器的实际情况进行计算,处理完的数据作为单片机内部的计数值。当计数器接收到反馈的脉冲信号时开始计数,并且实时与先前计算的计数值比较,判断是否相同,若相同即表示电机现在的位置为PC机指定位置。在单片机和L298N之间增加光电耦合器4N25,进行电气隔离,保护单片机并减少强电干扰。由于直流电动机是感性负载,因此选用功率二极管DIN5391组成电流泄放回路,以保护功率芯片L298N。结束语本文介绍了基于PC机控制的智能机械手无线控制系统的实现方法,提出了以无线控制方式来实现机械手的智能控制,解决了有线控制方式下出现机械手移动范围较小、连线复杂等问题。同时在机械手的定位方面采用了闭环反馈方式系统,确保了机械手在各个位置上的准确定位。采用这种系统比直接用单片机来控制机械手更加可靠,更加方便,同时这也将促进机械手智能化的发展。参考文献:[1]王建校.51系列单片机及C51程序设计[M].北京:科学出版社,2002.[2]王晓明.电动机的单片机控制[M].北京:北京航空航天大学出版社,2002.[3]吴金戌等.8051单片机实践与应用[M].北京:清华大学出版社,2002.[4]徐爱钧等.KeilCx51V7.0单片机高级语言编程与Vision2应用实践[M].北京:电子工业出版社,2004.[5]陈立正等.利用VisualBasic实现串并行通信技术[M].北京:清华大学出版社,2002.
本文标题:基于PC控制的智能机械手无线控制系统
链接地址:https://www.777doc.com/doc-122367 .html