2 中控机系统
该中控系统以ARM9核心板为中心,通过GPIO扩展板将有限的输入输出I/O扩展成足够数量的输入输出控制节点,能够接收系统中各种按钮、凸轮开关、光电开关等输入开关信号;根据程序和预先设定的参数,给出输出开关量,控制电磁阀、继电器、接触器的动作,同时通过高速脉冲输出向伺服驱动器发出一定数量的脉冲数,控制伺服电机的运转。输入及输出接口都使用光电隔离模块,既实现了抗干扰的目的,又能够实现对接口部分的电平转换。根据ARM输出端信号,变频器控制电动机的正反转及转速,从而实现对卷料的释放和回收。伺服驱动器根据ARM板高速脉冲输出端发出脉冲的个数、频率控制伺服电机的转动位置及速度,从而精确地给出送料长度。采用10英寸液晶显示屏,为用户提供了良好的人机交互界面,用户可以通过该屏幕直接设定参数,整个剪切系统的工作状态、动作信息可以直观地反映给用户。ARM与变频器、伺服器之间通过RS232串口通信,实现程序下载、参数设置、状态查询等即时的数据交换,最终使整个生产线设备能够协调运行。中控机框图如图2所示。
图2 中控机框图
2.1 ARM核心板
ARM核心板基于ARM处理器S3C2410X,采用6层板设计。S3C2410X使用ARM920T核,内部带有全性能的MMU(内存处理单元),具有高性能、低功耗、接口丰富和体积小等优良特性。该芯片集成了大量的功能单元,包括:内部1.8V,存储器3.3V,外部I/O3.3V,MMU;内置外部存储器控制器;LCD控制器,1个LCD专用DMA;4路带外部请求线的DMA;3个通用异步串行端口,2通道SPI;一个多主IIC总线,一个IIS总线控制器;SD主接口版本1.0和多媒体卡协议版本2.11兼容;2个USBHOST,一个USBDEVICE(V1.1);4个PWM定时器和一个内部定时器;看门狗定时器;117个通用I/O;24个外部中断;电源控制模式:标准、慢速、休眠、掉电;8通道10位ADC和触摸屏接口;16/32位RISC体系结构,使用ARM920TCPU核的强大指令集。
该核心板在尽可能小的板面上集成了64MSDRAM、64MNandFlash、1MBootFlash、RJ-45网卡、音频输入与输出、USBHost、USBSlave、标准串口等设备接口,最为重要的是使用2.0mm插针槽引出CPU的大部分信号引脚,包括系统中尚未使用的GPIO引脚。
ARM920T带MMU的先进的体系结构支持WINCE、EPOC32、LINUX等,文中选择的是免费开源的嵌入式Linux操作系统。基于该硬件平台及嵌入式Linux,做了操作系统移植、驱动程序编写和应用程序开发等软件工作。
2.2 控制母板
中控机箱内采用母板+ARM核心板+I/O扩展板方式,母板用来与ARM9板连接,实现网口USB、串口、电压转换、连接液晶屏等功能,同时在母板上还包括一定数量的可用的GPIO,包括10个输入,12个输出。I/O输入输出选用DB头接插件,方便连接。中控机内的开关电源为24V,电流可达4A.电源电路实现24V电压到12V/9V/5V/3.3V的转换,满足不同电路需要,稳压芯片使用LM338。ARM9核心板自身带有3个RS232串行接口,考虑到传输距离和抗干扰要求,在底板上设计了专门的转换模块将RS232转换为RS485电平。ARM9核心板自带USBHOST,使用USBHUB将其分为多路,分别可供键盘电路和鼠标使用,其他路向外输出。
2.3 GPIO扩展及隔离
GPIO扩展及隔离电路被设计到独立的电路板,用来实现I/O端口数量的扩展,可互换。每块扩展板上包括64个输入,64个输出。扩展板放在母板上方,用金属柱支撑,高度能保证二者不干涉即可。扩展板与母板之间以扁平电缆连接。扩展板的扩展I/O输入输出也选用DB头接插件。GPIO扩展有2种方案。一种是采用CPLD扩展,目前ARM板可使用的I/O口,大约有20个。如果用最简单的扩展方法,使用8个I/O用作数据线,使用4个I/O产生16个译码片选信号,这样可扩展成128个I/O。如果对外部按键采用扫描方式,那么可以节约一部分引脚。该方案只要ARM确保提供一定数量的I/O脚,具有较大可行性。ARM针对普通的I/O口操作既可,编程控制起来较容易,但在CPLD的编程上要花一些时间。第二种方案为使用专用扩展芯片实现扩展。现有ARM板扩展口中有2种串行总线接口:IIC总线和SPI总线。如果选用现成的I/O扩展芯片,如MAX6957,为IIC接口,一片可以扩展28个I/O,如果用4片就可以扩展到100多个I/O。该方案需要开发ARM的针对IIC设备的驱动程序。文中实际选用的是74HC595及74HC166芯片,多片串联,使用较少的I/O引脚成功实现并入串出和串入并出控制。
GPIO实现扩展后,可提供足够数量的输入I/O和输出I/O。系统中的大量开关或显示灯,作为开关量输入或输出,连接到这些扩展I/O即可。由于这些开关量的电平值大部分不是TTL电平或CMOS电平,需要进行电平转换;显示灯需要足够的驱动电流,继电器需要一定的驱动电压和电流;而且,系统中有大量的强电信号,为充分考虑提高系统的抗干扰能力。基于以上考虑,设计了电气隔离及驱动模块,普通的较慢变换的开关信号采用TLP521隔离光耦,针对高速脉冲采用高速光耦。
2.4 电机控制
根据ARM板输出端信号,变频器控制电动机的正反转及转速,从而实现对卷料的释放和回收。
对变频器来说,输入控制信号来自于隔离扩展板,通过设置不同的短路和开路组合,可以实现正转、反转、高速输出及低速输出,其中高速、低速是可以通过速度选择端口来预设的。其他有关特征、状态的参数可以通过操作面板预设。