集装箱自装卸运输车的双CPU无线遥控系统设计

2016-12-12 08:16司癸卯
中国工程机械学报 2016年3期
关键词:主从运输车遥控器

司癸卯,李 辉,吕 奎,肖 鹏

(长安大学 道路施工技术与装备教育部重点实验室,陕西 西安 710064)



集装箱自装卸运输车的双CPU无线遥控系统设计

司癸卯,李 辉,吕 奎,肖 鹏

(长安大学 道路施工技术与装备教育部重点实验室,陕西 西安 710064)

选用STM32F103RBT6作为遥控器CPU(Central Proessing Unit),nRF905和nRF24L01作为遥控器无线数据收发模块,并完成集装箱运输车自装卸机构遥控系统的设计,以此改善机构操作的便捷性.遥控器接收端通过并行串口和I2C总线进行通信,并设计主从CPU控制系统,大大提高了遥控系统的可靠性.

集装箱运输车自装卸机构; 无线遥控器; 双CPU控制; 可靠性

自装卸集装箱运输车广泛应用于公路运输和军事物资转移,具有运输灵活、快捷、机动性强的优点,其结构如图1所示.无线遥控装置是运输车控制系统的重要部分,装卸过程中控制的实时性和可靠性主要由遥控装置来决定.本文基于ARM7系列的STM32F103RBT6(以下简称STM32)单片机,采用主从式双CPU控制,大大提高了控制系统的可靠性,改善了机构操作的便捷性.该遥控器系统开发成本低、性能优良、性价比高,可应用于许多工业领域,前景广阔.

1 无线遥控器的工作原理及硬件选型

1.1 无线遥控器的工作原理

无线遥控系统主要由无线发射系统、无线接收系统、可编程控制设备及急停设备等组成,微处理器(Micro Controller Unit,MCU)选STM32.无线发射系统的控制面板采用按键式输入,经STM32处理后发送到无线发射模块并输出.车载无线接收系统的无线接收模块接收到无线控制信号后经IO(Input Output)口将信号传送给接收系统STM32.数据信号经STM32处理后若为急停信号,则直接输出到机械设备,对机械设备进行直接控制.若为普通控制信号则传输给CAN(Controller Area Network)总线,经PLC(Programm Logic Controller)放大后输出开关量,进而对机械设备进行控制.无线遥控器原理图如图2所示.

对集装箱运输车自装卸机构运行控制主要包括对吊装机构在挂车底盘的移动、支撑腿纵向伸缩臂的伸缩、支撑腿的旋转、支撑腿的伸缩、摆动伸缩臂的伸缩以及主伸缩臂伸缩的控制[1].这些动作采用电机和液压阀的开关即可控制,遥控器手持操作器采用按键式输入,操作简单,可靠性好.

图1 集装箱自装卸运输车吊装机构

图2 无线遥控器系统原理图

1.2 无线射频模块

无线射频通信是遥控器系统的主要通信方式,工业遥控器的无线通信频段多为ISM(Inhustrial Scentific Medica)频段,即工业、科学、医用频段,包括433 MHz,869 MHz,2.4 GHz等.其中433 MHz及2.4 GHz频段使用最多,所以选择这两个频段进行发射器与接收器之间的无线收发[2].经过选型性能分析,选用具有射频技术的nRF905射频模块和nRF24L01射频模块.

nRF905是挪威Nordic VLSI公司推出的单片无线收发一体的芯片,工作电压为1.9~3.6 V,32引脚QFN(Quad Fat No-leadpackage)封装(5 mm × 5 mm),工作于433/868/915 MHz3个ISM频道.它有ShockBurstTM接收模式、ShockBurstTM发送模式、关机模式和空闲模式.nRF905的工作模式由TRX_CE,TX_EN和PWR_UP3个引脚决定.

nRF24L01是一款新型单片射频收发器件,工作于2.4~2.5 GHz频段.通过设置配置寄存器中PWR_UP,PRIM_RX,CE的值,可将nRF241L01配置为发射、接收、空闲及掉电4种工作模式.

单片机与其他芯片连接时可选择的接口很多,除特殊功能的接口,如电源接口、接地接口、时钟电路接口以及其他特殊功能的接口,其他接口可根据用户需求任意选择[3].在运行时,将所选接口通过软件设置即可实现所需功能.

本设计的发射系统和接收系统均采用双CPU控制,发射系统采用双CPU完成信号采集和双频道信号发射,接收系统采用双CPU完成双频道信号接收和处理.发送系统中两单片机与两射频模块的连接如图3所示,在接收系统中亦采用同样的连接.

图3 单片机与射频模块连接图

2 无线遥控器发射系统

遥控器发射系统主要完成遥控器操作面板的信号采集和控制信号的发送.为使两射频模块能够同时发送指令,发射系统采用双CPU同时采集、同时发射.其原理图如图4所示.两CPU的电源、复位电路、时钟电路相互独立,可提高发送设备的可靠性.遥控器发射系统操作面板同时与两CPU相连,面板的按键信号同时被两个CPU采集.若某个CPU采集端口出现故障或两CPU采集到的信号不一致,接收系统经过对比分析,做出相应的停止.本设计的遥控器应用于集装箱运输车自装卸机构控制,只需控制开关闭合即可.若某些特定场合下需要用到模拟量,可在备用设备接口连接模拟量设备,扩展简单.

图4 遥控器发射系统结构图

3 无线遥控器接收系统设计

3.1 双CPU通信

工业用遥控器规程规定,遥控器的接收模块须使用双CPU通道,当某一CPU发生故障时,另一个CPU立即启动断电命令.双CPU通信常用的方法有:利用双口RAM(Random-Acess Memory)实现双CPU通信,利用共享内存的方法实现双CPU通信,通过接口芯片或CPU本身具备的SPI(Serial Peripheral Interface)、I2C(Inter-Intergrated Circuit)等接口实现双CPU通信.本设计采用STM32的通用同步异步收发器(Universal Synchronous/Asynchonus Receiver/Transmitter,USART)实现异步串口通信,通过两个单片机的RXD(Receive Data)、TXD(Transmitter Data)实现系统互检,并利用I2C总线完成数据交互[3].

3.1.1 USART的异步通信完成双CPU的互检

遥控器接收部分工作时,为防止CPU供电故障、时钟电路故障而引起控制系统失效,在双CPU之间设置了系统互检模块.本设计所选的单片机含有USART接口,选用USART来完成量CPU的异步通信.连接时将单片机1的TX与单片机2的RX相连,单片机1的RX与单片机2的TX相连,如图5所示.

软件设计时首先完成时钟配置、GPIO(General Purpose Input Outpt)配置、USART初始化、中断优先级初始化、使能中断.然后采用“一个CPU输出定宽的脉冲,另一个CPU检测此脉冲宽度”的方法完成两CPU开机和运行过程中的实时监控.

图5 单片机双机串口交互

3.1.2 单片机I2C通信完成主从CPU数据的传输

STM32有一组I2C通信接口,连接时将单片机1的SDA(Synchronous Data Adapter)接口、SCL(Serial Communication Loop)接口分别于单片机2的SDA接口、SCL接口相连[3],如图6所示.

图6 单片机双机I2C通信

单片机1为主机,2为从机,单片机1将接收到的信号通过SDA接口传给单片机2,单片机2将两组数据进行对比,判断是否相同.

I2C通信只有SDA和SCL两根线,各器件通过软件寻址,硬件电路简单,且采用应答式数据传输,传输稳定可靠.

3.2 双CPU主从控制系统设计

遥控系统的车载接收系统采用双CPU主从系统设计,以提高系统工作的可靠性.两个CPU的电源、复位电路、时钟电路和信号接收模块相互独立,各自完成各自的功能,相互之间没有影响[4].其系统原理图如图7所示.

图7所示的遥控器车载部分采用主从CPU设计,单片机1作为主CPU,单片机2作为从CPU.单片机1连接控制总线,单片机2主要的作用是对主CPU的数据和工作状态进行检测.同时,单片机1也对单片机2的工作状态进行检测.当两个单片机中的任何一个检测出彼此工作状态出现故障时,立即启动各自独立的急停电路.当遥控器的其中一个接收频道受干扰信号干扰,或者发射器两个CPU采集数据不一致时,都会被从机CPU检测出来,并启动急停指令,终止运行,大大提高了系统运行的安全可靠性.

图7 遥控器接收系统原理图

4 遥控接收器主从CPU控制系统软件设计

用C语言编写系统软件,编写方便、可读性强.在遥控器接收部分完成对主、从CPU系统软件的编写,主CPU软件包括:对从CPU的检测、无线数据的接收、向从机发送数据以及控制信号输出; 从CPU软件包括:对主CPU的检测、无线数据接收、接收主机传送的数据、完成主机与从机数据的对比.

主、从CPU程序流程图如图8和图9所示.初始化函数包括定时器、I2C通模拟口初始化、并行串口定义初始化等.开机后双机通过并行串口总线,通过对比对方脉冲与设定的值,判断双机是否正常.为保证两个CPU的实时性,主从机每隔20 ms进行一次数据对比,判断两CPU输出信息是否一致.若对比结果不一致,另一个计数器开始计时40 ms后,即再进行两次数据传输对比,判断数据结果是否一致,这样可减小因两发送模块的发送程序不同而引起的数据传输不同步问题[5].

接收系统的总线控制信号最终由主机输出,从机不参与控制信号的输出; 急停信号由主、从机独自输出,两机可单独实现急停命令.

5 结语

集装箱运输车自装卸机构采用遥控系统控制可改善工作环境、节约成本、提高效率.本文所设计的双CPU无线遥控器应用于集装箱运输车自装卸机构上,大大提高遥控系统的可靠性,符合工业控制要求.双CPU遥控器硬件要求较低,开发成本低,其可靠性高,操作便利,使用价值高,能给用户带来很大的经济效益,应用前景广阔.

图8 接收系统主机CPU软件流程

图9 接收系统从机CPU软件流程

[1] 李振营,廖德峰,曾峰,等.一种装于半挂车的自装卸吊装机构:中国,CN 202641478 U[P].2013-01-02.

LI Zhenying,LIAO Defeng,ZENG Feng,et al.The self-handling crane structure of semi trailer:China,CN 202641478 U[P].2013-01-02.

[2] 宋丹丹.无线工业遥控器的研究与设计[D].南京:南京理工大学,2013.

SONG Dandan.Research and design of wireless industrial remote controller[D].Nanjing:Nanjing University of Science and Technology,2013.

[3] 黄智伟,王兵,朱卫华,等.STM32F 32位ARM微控制器应用设计与实践[M].北京:北京航空航天大学出版社,2012.

HUANG Zhiwei,WANG Bing,ZHU Weihua,et al.Application design and practice of STM32F 32 bit ARM microcontroller[M].Beijing:Beijing University of Aeronautics and Astronautics Press,2012.

[5] 杨国先,陶霞,王子菡,等.基于双CPU的切换及控制系统设计[J].微计算机信息,2006(10):268-270.

YANG Guoxian,TAO Xia,WANG Zihan,et al.Switch and design of control system based on double CPU[J].Micro computer information,2006(10):268-270.

Double-CPU wireless remote control system design for self-handing container vehicles

SI Gui-mao,LI Hui,LV Kui,XIAO Peng

(Key Laboratory for Highway Construction Technique and Equipment of Ministry of Education, Chang' an University, Xi'an 710064, China)

By choosing the STM32F103RBT6 as a remote control CPU, and the nRF905 and nRF24L01 as wireless data transceiver modules, the remote controller system for self-handing mechanism of container vehicles is first designed.Then, the remote controller is designed based on the master-slave CPU control system through the parallel serial port and I2C bus communication at the receiving end.Therefore, this approach can significantly improve the system reliability.

container vehicle self-handling mechanism; wireless controller; double-CPU control; reliability

司癸卯(1963-),男,副教授,工学博士.E-mail:smart@chd.edu.cn

TH 247

A

1672-5581(2016)03-00249-05

猜你喜欢
主从运输车遥控器
我是“糊涂虫”
时间遥控器
爸妈有个“遥控器”
陆空双栖运输车
行走的飞行遥控器
FANUC系统PROFIBUS主从功能应用
中置轴车辆运输车来了
破“阻”——制定快递运输车标准
基于飞行试验数据的仿真模型主从一体化检验
2020年后的城市运输车将会怎样?