文献标识码:A
文章编号: 0258-7998(2010)09-0036-03
随着开云棋牌官网在线客服和计算机技术的发展,单片机技术也得到迅速发展。利用单片机进行产品开发,最明显的优点是可大大缩短开发周期、降低成本和提升产品竞争力。由于速度和功能的扩展,单片机的应用领域也可以方便拓展到许多高端技术场合,尤其与一些大规模逻辑或时序芯片(如CPLD、FPGA等)配合使用,使得以前的单片机只能用于低端场合的情况得到巨大改善。单片机编程方便、使用灵活、可移植性强、可结构设计及可直接操作计算机硬件、生成的代码质量高的特点,在很大程度上推广了单片机的使用。
电子系统的集成化不仅解决了系统的体积、重量问题,也大大提高了系统的可靠性。复杂可编程逻辑器件CPLD的日益成熟,使其在各个领域得到了强有力的推广和成功应用。本文在以高速单片机C8051F120和EPM570T144为核心的基础上设计了包括伺服控制器、增量式编码器、ABZ码数据采集、PWM电机控制信号产生、GPS数据信号处理以及和LCD数据显示等功能模块的一种多功能控制系统。系统成本低、功能全,在望远镜控制系统中应用,验证了其可行性。
1 系统功能说明
望远镜控制系统包括很多分系统,如伺服系统、编码器系统、时统系统。伺服系统包括编码器的位置/速度采样模块、PWM控制信号产生模块、控制的算法实现、功率驱动等环节;时统系统为各个分系统产生同步信号和时间信息等,提供的输出接口具有差分或TTL电平方式。整个控制板功能原理图如图1所示。
图1中,单片机负责控制算法的实现和外部控制接口,如速度控制器和位置控制器算法、LCD显示内容的控制、与外部的通讯和A/D采样等;CPLD负责各种逻辑电路的实现,如ABZ码可逆计数,PWM控制波形产生,各种开关量输入接口。CPLD具有的诸多功能大大减轻了CPU的负担, CPU则只从CPLD接收数据进行处理,完成PID的控制算法,输出控制变量到CPLD。
2 硬件系统设计
2.1 单片机简介
选用新华龙C8051F120单片机,其是完全集成的混合信号片上系统型MCU芯片,具有64个数字I/O引脚(100脚TQFP封装)。具有下列主要特性[1]:高速、流水线结构的8051兼容的CIP-51内核(100 MIPS或50 MIPS);真正12 bit、100 kS/s的ADC,带PGA和8通道模拟多路开关;2周期的16×16乘法和累加引擎;128 KB可在系统编程的FLASH存储器;8 448(8 K+256)B的片内RAM;可寻址64 KB地址空间的外部数据存储器接口;硬件实现的SPI、SMBus/I2C和2个UART串行接口;5个通用的16 bit定时器等。
2.2 CPLD
CPLD选用ALTERA公司的低成本低功耗MAXⅡ系列的EPM570T144,含有570个逻辑单元(LE),等效于440个宏单元;8 192 bit的用户Flash存储器,可满足用户小容量信息存储要求;最大用户I/O 数为76,最快速度为4.5 ns,内部最大时钟频率304 MHz,完全满足系统设计要求。完成与MCU的数据总线和地址总线接口电路、外部定时中断电路、译码电路、PWM脉冲发生电路、倍频鉴向电路、计数电路、故障保护电路等功能。
2.3 GPS模块
GPS接收机模块选用XW-GPS100型号模块,因其使用U-blox公司LEA-5S型号GPS芯片接收卫星信息,所以具有体积小、精度高、抗干扰能力强、灵敏性好及价格低廉等诸多优点。它的接收机类型为50通道的性能引擎的GPS L1 C/A码,具有4 Hz的最大更新速率,定位精度为2.5 m,启动时间短。
2.4 通信接口RS232
本系统设计为带有两通道的标准RS232通信接口,完成外界与系统内部的通信功能。在控制系统功能下,外接上位机,实现对系统的控制信号输入,同时亦可把实时信号通过通信口传送至下位机,处理实时采样数据。在GPS系统工作模式下,选用其一作为GPS卫星数据信号的输入通道,接收GPS模块传送进来的数据信息,在主控器单片机中对其进行解析和其他操作;同时,选用另一通信通道作为数据信息传输功能,完成对解析数据信息的实时传输,对于与此相连的下位机可以完成其他相应功能。
2.5 PWM波形产生模块
控制系统中,根据电机运转的实际情况对电动机转速进行控制,通过相应算法在线实时调节PWM波形占空比来达到目的,调节质量的好坏取决于控制系统的硬件条件及软件算法。其PWM产生电路如图2所示。
由于在控制望远镜方位及俯仰电机运转的过程中,采用的是双极性控制模式,所以在上述PWM输出模块后需要加入死区电路,防止双极性模式下的二极管直通现象发生。通过在单片机内的控制信号调节CPLD中控制信号,可实现对直流电机的单双极性、运转方向及使能的控制。
2.6 编码器计数模块
选用高精度的增量式光电编码器作为位置和速度传感器。其输出端包括A、B、Z三种信号,通过对A、B码信号90°相位差的识别来判断电动机运转方向及位置,清零信号Z每过零点一次则产生一次脉冲[5]。本文采用CPLD实现对此编码器信号的解析,可降低设计成本、减少PCB面积。经过图3所示的编码器信号处理电路后,输出TTL电平的A、B、Z信号到CPLD,对波形进行整形、数字滤波处理,再细分,进辨向电路[6],最后由可逆计数电路完成对脉冲的计数,输出32 bit的二进制码值,单片机对计数值读取获得位置值。
2.7 LCD液晶显示
LCD模块选用LM6800,它是256×64全图形点阵的液晶显示模块,指令简单,易于操作,适合与本设计所选用的C8051F120主控制器结合使用,LCD液晶显示范围亦可满足本设计所涉及到的相应显示信息。
2.8 I/O接口
C8051F120的又一特点是I/O接口丰富,可以方便地实现绝大部分功能,包括如前所述的编码器AB码输入及计数信号、控制信号、通信信号等。此外,CPLD芯片还包括GPS秒脉冲同步时钟信号的多路输出。CPLD的全局时钟为100 MHz,对其分频处理给内部各个模块,如计数模块电路、PWM处理电路和单片机的中断信号,由100 MHz分频成1 MHz、1 kHz、500 Hz、50 Hz。
2.9 A/D采样
C8051F120的ADC0 子系统包括一个9 通道的可编程模拟多路选择器(AMUX0),一个可编程增益放大器(PGA0)和一个100 kS/s、12位分辨率的逐次逼近寄存器型ADC,ADC中集成了跟踪保持电路和可编程窗口检测器。AMUX0、PGA0、数据转换方式及窗口检测器都可用软件通过设置特殊功能寄存器控制。
3 软件设计
3.1 GPS系统
图4所示为GPS全球定位系统的主程序流程图[2]。在主控制系统及LCD初始化之后,判断单片机所接收的GPS信息,若为帧头起始符‘$’,则进行数据信息的接收并进行图示中以下各步骤的数据处理,最后把所需要的日期、时间、经纬度和海拔高度数据信息显示于LCD液晶显示屏上,并把这些数据进行数据压缩打包,且在GPS秒脉冲的触发下通过异步串行通信口UART1发送至其他系统。
3.2 闭环控制系统
在控制算法的实现上采用内模控制,其设计思路是将对象模型与实际对象相并联,控制器逼近模型的动态逆,对单变量系统而言内模控制器取为模型最小相位部分的逆,并通过附加低通滤波器以增强系统的鲁棒性。模型和被控对象模型精确匹配时,控制系统的输入等于输出。内模控制能够清楚地表明调节参数和闭环响应及鲁棒性的关系,内模控制器的动态特性取决于内部模型与被控对象的匹配情况[3,4]。在工业过程中,与经典PID控制相比,内模控制仅有一个整定参数,参数调整与系统动态品质和鲁棒性的关系比较明确,故采用内模控制原理可以提高PID控制器的设计水平。也由于参数调节简单,此算法利于单片机程序实现。
大型光电望远镜属于大惯量系统,机械时间常数远大于电气时间常数,故可忽略电气时间常数的影响,对象的速度传递函数可简化为:
4 实验
LCD显示内容包括GPS信息和电机控制信息,可由按键和通信要求进行显示内容的切换。测得某轴速度响应曲线如图5。完成两轴电机控制算法时间约为230 μs,包括读取增量式编码器数值、算法实现、PWM输出时间等。在时间上可满足实时性要求,而且通信口将各种状态变量输出到上位机,包括位置信息、速度信息、时间信息等。
本文通过高速单片机C8051F120和大规模CPLD实现了望远镜多个分系统的整合,满足了多功能和实时性要求,提供了低成本的解决方案,并用实验验证了其可行性。通过功能选择可方便用于伺服控制器、编码器数据采集显示等各种应用中,可大大降低成本,提高产品竞争力,具有一定的实用价值。
参考文献
[1] 新华龙电子有限公司.C8051F120/1/2/3/4/5/6/7、C8051-F130/1/2/3系列混合信号ISP FLASH微控制器数据手册,Rev 1.3.2004,12.
[2] U-blox 5 NMEA UBX Protocol Specification.Ublox corporation datasheet.
[3] 李洪文.基于内模PID控制的大型望远镜伺服系统研究. 光学精密工程,2009,7(2):327-332.
[4] 李洪文,张斌,阴玉梅.大型光电望远镜高集成智能伺服系统设计.机床与液压,2009,37(8):323-326.
[5] 徐禄勇,李尚柏,钟睿.基于MCU+CPLD的新型光栅数显系统设计.国外电子元器件,2008(5):8-10,14.
[6] 金锋,卢杨,王文松,等.光栅四倍频细分电路模块的分析与设计.北京理工大学学报,2006,26(12):1073-1076.