您的当前位置:首页正文

基于MC9S12DG128单片机的快速位置伺服系统的设计

2024-07-16 来源:步旅网



基于MC9S12DG128单片机的快速位置伺服系统的设计

关键字:MC9S12DG128伺服系统系统精度

0引言

本设计要求对某火炮的水平和高低角进行控制,达到快速位粗伺服系统的要求。而这个火炮角度控制系统首先要求有快速性,它的反应时间大于或等于12°/s角度转动控制精度小于或等于1',水平角转动范围从-120°+120°,高低角转动范围从+85°;最后系统要有很好的稳定性和动态性能。

由于位置伺服系统-般是以足够的位置控制精度、位置跟踪精度和足够快的跟踪速度作为它的主要控制目标,系统运行吋要求能以一定的精度随时跟踪指令的变化。所以对于这种
快速位置伺服系统,要求整个系统各部分配合良好,其屮的关键是控制器的选择,综合考虑髙粕度、抗干扰能力、灵活性、可靠性、实时性、性价比等各因素的情况下。选择7

cale公司的MC9S12DG128B作为控制器。MC9S12DG128B芯片杲一款16位的单片机,功能
Frees —

强人,性能优越。本文采用该型号的单片机保证了所设计系统的稳定可靠。

1系统控制方案

由于设计的角度伺服系统的负载比较人,而且相对于T业控制要求而言系统精度和快速性要求高,所以整个系统采用混合闭环的控制结构,所谓混合闭环的控制结构,就是系统内
同时存在半闭环和闭环。半闭环起到控制作用,而全闭环只用于稳态谋差补偿,两者相结合可获得较高的位直控制精度和跟踪速度。包括:MJX40—14型光电编码器、90LCX- 3直流伺服电机、12A8PWM直流伺服电机驱动器、单片机控制系统。单片机控制系统由MC9S12DG128B单片机实现,使用CodeWarrior for HC12 V4.6编译器,采用C语言编程。由于水平角和高低角的控制是一样的,而且共用一个单片机,以角度控制方框图(图1來说明。





如图1所示,系统的任务是使光电编码器测得的炮架转动角度()2与给出的指令()1相等。

1H

2

1

()2的偏羌信号在单片机里进行处理,放大片输入到PWM直流伺服电机驱动器,由PWM驱动器驱动直流伺服电机,伺服电机帯动减速器,驱动炮架向着减少偏差的方向移动,直到«1=«2,电机停止转动,达到目标。同时,炮架要准确的跟踪目标,必须减少在跟踪过程屮可能出现的速度变化(如风速等原因),因为直流伺服电机本身带有测速
机端,可以把速度反馈信号进行负反馈输入到PWM伺服电机驱动器,这样使转动机械的转速度变化很小,起着稳速的作用。

2硕件系统设计

2.1总体设计

柴个硬件系统采用模块化思想设计,换件系统椎图如图2所示,分为单片机CPU最小系

统、键盘/显示控制模块、直流伺服电机驱动电路、系统输入模块、光电编码器等。设计时

, 各个模块可相对独立设计调试,最后集成为柴个系统。

2.2模块结构和功能简要说明

CPU最小系统:系统的主控模块,用以控制和协调其它模块T作。

键盘/显示控制:由键盘及LED管理芯片CH451控制。系统输入模块:用通用8155

片做数据采集,获取光电编码器所测得的火炮当前角度(位直)值,并传给主控芯片。伺

服电

机驱动电路:用带有缓冲基准输入的双路12位电压输岀数字一模拟转换器TLC5618作为

单片机的一个外围的D/A接口;当系统把偏差值算好厉,利用PTD算法得出的数据量输出到

两路TLC5618,再通过驱动器去驱动水平和高低角的伺服电机,精确控制火炮的高低角和水

平角位宜和速度。

SCI通信:通过串行通信模块。系统可以与上位机连接,方便对系统软件的更新和升级

,





且可通过上位机进行控制角度控制,监视单片机的输入与输出。光电编码器:川于得到炮架的转动角度。

2.3主要模块设计

2.3. 1单片机CPU最小系统

HCS12

MCU

-

MCU(

)

相应的外囤电路(MCU支撑电路),才能构成一个最小系统。HCS12系列MCU的最小系统-般包括电源电路、时钟电路、复位电路、13DM调试头电路,MC9S12DG128芯片最小系统支撑电路示意图如图3所示。其屮各个部分功能如下:

(1)电源电路主要给MCU提供+5V,+12V+3.3V电源。

(2) 时钟电路给MCU提供一个外接的冇英晶振。

(3) 复位电路主要完成系统上电复位和系统在运行吋用户按键复位。

(4)BDM接口电路主要完成与BDM调试工具相连,向MC9S12单片机写入和调试程序。

2.3. 2键盘/显示控制电路

键盘控制模块采用键盘及LED管理芯片CH451oCH451是一个幣合了数码管显示驱动和键盘扫描控制以UP监控的多功能外围芯片°CH451内叠RC振荡电路,可以动态驱动8位数码管或者64LED,具有BCD译码、闪烁、移位筹功能;同时还可以进行64键的键盘扫描;CH451通过可以级联的串行接口与单片机等交换数据;并且提供上电复位和看门狗等监控功能。该芯片支持SPI同步串行通讯方式,可以与MC9S12DG128B单片机的SPI通讯口进行告诉数据通讯,控制方便。键盘采用4X4矩阵式键盘,系统共使用16个按键。显示数据用数码管,由键盘输入火炮要旋转的水平和高低角度值,并显示出来,系统第一次采集來的角度值也是通过它显示的。





2.3. 3系统输入模块

从光电码盘屮输出的数据有15位,要是单一-的用单片机去读取光电码盘的数据,一个光电码盘就会用到15个数据线,占用了单片机的人量资源。利用8155的丰富的I/O口资源,可以减少对单片机资源的占用。单片机给光电编码器一个读取信号脉冲,8155PAPB口立即得到光电编码器的数据,并存到了PAPB寄存器中,此吋单片机只要读取8155PAPB寄存器就能得到光电码盘的数据,通过计算就能获得此时炮架的方位角和高低角。

2.3. 4伺服电机驱动电路

对于一般的D/A转换器的输入端都用并行输入,但是前面的芯片已经占用了单片机人量的接口,为了系统的输入输出能同步进行,本设计选用了串行输入的TLC5618,它是一种快速带缓冲基准输入(高阻抗)的双路12位电压输出数字一模拟转换器(DAC),弥补了串行输出的速度慢的不足,TLC5618具有1.21 MHz的输入数据更新速率,DACADACB两路同时更新,0.5LSB的建立时间为2. 5ms,它的最大串行时钟速率为20MHz,转换速度达到要求;且它有两路12CMOS电压输出,精度符合设计要求;高阻抗基准输入使输出有很强抗

T•扰能力。TLC5618+5V单电源T作,其输出电压范围为基准电压的两倍,因此,电路设
计采用2.5V基准电压。通过CMOS兼容的3线串行总线,可对TLC5618实现数字控制,单片机串行数据通过PT1输入TLC5618,串行吋钟通过PT2输入,PTO接片选端,TLC5618接收到数据后,经过数模转换,产生05V的模拟信号,经过减法器,得到一2.52.5的模拟信号,只有达到一10V10V的模拟信号才能更精确的控制电机,所以用高速放大器LM318进行两级两倍放大,就可以达到设计的要求。

3软件系统设计

系统软件采用模块化设计思想,主要模块有:主程序模块、数据采集模块、键盘与显示模块、IRQ定时屮断处理程序、D/A数据输出模块、串行通信模块。开发调试平台是CodeWarrior软件。CodeWarrior系列集成开发环境(IDE,Integrated DevelopmentEnvironment)Metrowerks公司为开发嵌入式微处理器而设计的一,套强人易用的开发T具,使用它可以有效地捉高软件开发效率。系统的总的流程如图4所示。





4结束语

基于Freescale公司的MC9S12DG128B单片机,设计了火炮的快速位置伺服系统。对硬件系统的键盘/显示控制模块、系统输入模块、直流伺服电机驱动电路等各个功能模块进行了详细的电路设计,在CodeWarrior系列集成开发环境开发了软件系统,最后对软换件进行了综合调试。目前,设计的系统功能完善、运行可靠。结果表明:该系统方案设计合理,对
角度控制精确度高,系统平稳,可靠性高,操作简单,达到要求的指标,稍加改造,还可应用到其它位宜伺服系统屮。

转载请注明:屮国丁•控网hl.lp://wwwgkcitycom/





显示全文