2 控制器硬件组成
该系统在原压力机的基础上增加控制器和计算机,其组成如图l所示。该系统分为压力机(机构)、控制柜(强电控制)、控制器(弱电控制)和计算机(人机交互界面)等4部分。
控制器处于计算机和控制柜之间,控制器和计算机之间采用USB通讯,控制器接收计算机指令则控制各个开关和模拟信号,并同时采集油泵和油缸的压力和温度信号,将采集的压力值和计算机的压力阈值相比较,进而控制调节阀开度,采用PID算法实现加压速度的自动调节,进入保压期后再控制调节阀使压力值达到恒定。
根据控制器的功能要求,该控制器应具有计算能力、采集模拟量信号、控制开关量和模拟量信号并能通过USB总线和计算机通讯、该控制器组成模块为CPU、A/D转换、D/A转换,V/I转换、继电器阵列和RS232/USB转换器,如图2所示。
CPU采用C8051F040,它具有高速8051微控制器内核,流水线指令结构;70%指令执行时间为1~2个系统时钟周期,因此其运算速度较快;内部集成有13个,12位A/D转换器,可将压力温度模拟信号转换为数字信号;2个12位D/A转换器,根据需要控制调节阀;2个UART串口,用于单片机和计算机通讯;64个I/O端口,用于控制开关量信号;64 KB Flash程序存储器,使系统在线编程;4 K RAM可在编程。因此,C8051F040是一款功能强大的单片机,是该系统设计的核心。
3 单元电路设计
3.1 USB通讯电路设计
由于单片机提供RS232通讯接口,而计算机采用USB接口,因此需要USB和RS232接口转换电路,该系统设计采用CP2101,它是Silicon公司生产的高度集成的USB转UART桥接器,内置USB2.0全速功能控制器、USB收发器、振荡器和带有调制解调器控制信号的异步串行数据总线(UART),工作时无需其他外部元件。
Silicon提供免费的驱动程序,支持Win98/Me/2k/XP/CE,MAC OS-9、MAC 0S-X以及Linux部分版本。方便地将一个基于CP2101的产品作为PC机的一个虚拟COM端口,使用CP2101的UART接口处理所有的RS232信号,而无需更改现存的同件COM端口。
CP2101 UART接口包括TXD(发送)和RXD(接收)数据信号以及RTS,CTS,DSR,DTR,DCD和RI控制信号,UART支持RTS/CTS,DSR/DTR和X-On/X-Off握手,在PC机的COM端口配置时,编程设置UART的数据格式和波特率。该系统设计采用3线制串口,波特率19.2 Kb/s,1位起始位,8位数据位,1位停止位,无校验位。图3为USB转RS232接口电路。图中RXD和TXD连接单片机串口,USB接口依次是+5 V、D-、D+和GND,工作时连接计算机任意USB接口。
3.2 模拟量采集信号调理电路
由于系统需采集1~5 V电压和4-20 mA电流的模拟信号,对于电流信号只要在电流环串联一只250 Ω电阻即可转换为0~5 V的电压信号,图4是任一路信号调理电路。该电路可输入电压信号或电流信号,输入信号为ADI4。ADI4不接尺R204时,输入电压信号;接R204(250 Ω)电阻时,则输入电流信号,U22B是电压跟随器,输出1~5 V,后接2只分压电阻R228和R232,可将信号转换为0.5~2.5 V,R208和C204用于低通滤波,U21B为比例运放,由于运放单电源供电,所以设计为同相比例运算,R220和R224为分压电阻,根据试验确定阻值,VD24和VD28为保护电路。