伺服系统的软件设计
扫描二维码
随时随地手机看文章
在伺服系统软件设计过程中,采用了模块化设计思想。把设计过程分成两个模块,即电机运动控制系统程序模块与分布式监控网络通信模块。
在电动机运动控制系统程序模块中,主要形成对电动机运动的多个命令数据。主要有如下的控制命令:在X轴单片机控制系统中,慢速左移Ⅳ步,慢速右移Ⅳ步,快速左移Ⅳ步,快速右移Ⅳ步;在y轴单片机控制系统中,慢速前移Ⅳ步,慢速后移Ⅳ步,快速前移Ⅳ步,快速后移Ⅳ步;在z轴单片机控制系统中,慢速上移Ⅳ步,慢速下移Ⅳ步,快速上移Ⅳ步,快速下移Ⅳ步;在物镜切换单片机控制系统中,顺时针转动90°,逆时针转动90°。II x轴步进电动机控制系统程序为例,给出了其程序框图(见图1)。
在分布式监控系统通信网络软件设计过程中,以PC为主机,单片机为分机,为了保证每台单片机能与PC有序地通信,在系统网络中定义了一个通信协议,其通信协议规则如表1 所示。
表1 通信协议规则
表1 所形成的通信协议组成了一个数据帧,并在通信网络中传输,以保证通信的可靠性。在表1中,SYNC,HCD1,HCD2为同步头,分别用54H,5AH,5BH三个字节组成24位数据流,以提高通信时的抗干扰能力。DAB为目的地址,一个字节,地址从1到FEH,共254个地址,地址0不用,用FFH表示广播地址。在本系统中,有5个单片机,其地址号从01H到05H。SAB为源地址,一个字节,只有一个主机,故SAB取01H。COMD为命令字,最多可表示255个命令,用在本系统中己经足够了◇DATA1~DATA4为四个字节的数据。CHSUM为一帧数据的校验码,一个字节,在本系统中采用的是校验和的方式。
在通信过程中,由PC(上位机)发送一数据帧给单片机(下位机),在单片机接收到一帧数据之后,根据本身的地址来分析当前数据帧是否为自己所接收的数据帧,若是则接收进来,否则放弃该数据帧,准备接收下一数据帧。
为了保证单片机能及时地处理数据帧,单片机所接收的数据帧全部放在单片机的串行口中断完成,其程序框图如图2所示。