基于MC9S12DGl28单片机的位置伺服系统的设计

基于MC9S12DGl28单片机的位置伺服系统的设计,第1张

  由于位置伺服系统一般是以足够的位置控制精度、位置跟踪精度和足够快的跟踪速度作为它的主要控制目标,系统运行时要求能以一定的精度随时跟踪指令的变化。所以对于这种快速位置伺服系统,要求整个系统各部分配合良好,其中的关键是控制器的选择,综合考虑高精度、抗干扰能力、灵活性、可靠性、实时性、性价比等各因素的情况下。选择了Frees—cale公司的MC9Sl2DGl28B作为控制器。MC9Sl2DGl28B芯片是一款16位的单片机,功能强大,性能优越。本文采用该型号的单片机保证了所设计系统的稳定可靠。

  1 系统控制方案

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

  

基于MC9S12DGl28单片机的位置伺服系统的设计,角度控制方框图,第2张

 

  如图1所示,系统的任务是使光电编码器测得的炮架转动角度θ2与给出的指令θ1相等。当θ1≠θ2时,θ1一θ2的偏差信号在单片机里进行处理,放大后输入到PWM直流伺服电机驱动器,由PWM驱动器驱动直流伺服电机,伺服电机带动减速器,驱动炮架向着减少偏差的方向移动,直到θ1=θ2,电机停止转动,达到目标。同时,炮架要准确的跟踪目标,必须减少在跟踪过程中可能出现的速度变化(如风速等原因),因为直流伺服电机本身带有测速机端,可以把速度反馈信号进行负反馈输入到PWM伺服电机驱动器,这样使转动机械的转速度变化很小,起着稳速的作用。

  2 硬件系统设计

  2.1 总体设计

  整个硬件系统采用模块化思想设计,硬件系统框图如图2所示,分为单片机CPU最小系统、键盘/显示控制模块、直流伺服电机驱动电路、系统输入模块、光电编码器等。设计时,各个模块可相对独立设计调试,最后集成为整个系统。

  

基于MC9S12DGl28单片机的位置伺服系统的设计,硬件系统框图,第3张

 

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

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

  键盘/显示控制:由键盘及LED管理芯片CH451控制。系统输入模块:用通用8155芯片做数据采集,获取光电编码器所测得的火炮当前角度(位置)值,并传给主控芯片。伺服电机驱动电路:用带有缓冲基准输入的双路12位电压输出数字一模拟转换器(TLC5618)作为单片机的一个外围的D/A接口;当系统把偏差值算好后,利用PID算法得出的数据量输出到两路TLC5618,再通过驱动器去驱动水平和高低角的伺服电机,精确控制火炮的高低角和水平角位置和速度。

  SCI通信:通过串行通信模块。系统可以与上位机连接,方便对系统软件的更新和升级,且可通过上位机进行控制角度控制,监视单片机的输入与输出。光电编码器:用于得到炮架的转动角度。

  2.3 主要模块设计

  2.3.1 单片机CPU最小系统

  HCSl2系列MCU的硬件结构中仅有一个MCU(微控制器)是无法工作的,它必须结合其它相应的外围电路(即MCU支撑电路),才能构成一个最小系统。HCSl2系列MCU的最小系统一般包括电源电路、时钟电路、复位电路、BDM调试头电路,MC9Sl2DGl28芯片最小系统支撑电路示意图如图3所示。其中各个部分功能如下:

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

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

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

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

  

基于MC9S12DGl28单片机的位置伺服系统的设计,MC9Sl2DGl28芯片最小系统支撑电路示意图,第4张

 

  

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2494520.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-04
下一篇 2022-08-04

发表评论

登录后才能评论

评论列表(0条)

保存