基于STM32温室大棚作业车控制系统的研究与设计

2019-12-06 09:48辉,王川,徐
安徽开放大学学报 2019年4期
关键词:下位遥控编码器

刘 辉,王 川,徐 荣

(1.安徽广播电视大学 信息与工程学院,合肥 230022;2. 安徽农业科学院 农业工程研究所,合肥 230031)

农业作业机械的远程监控系统主要指的是通过无线通信网络来获取需要的信息,利用计算机系统远程操作终端设备,包括对远程终端的启动、关机和日常设置等操作[1]。农业机械远程监控系统已经在全球很多国家研究并实施,美国玉米等农作物实施了利用遥感、卫星全球定位系统、地理信息系统等技术对生产环境及作物进行实时监测和及时管理[2]。为解决小型植保机械农药喷洒作业对人体造成的危害问题,许丽佳等人设计了一种小型农药喷洒无线遥控作业机,以单片机作为整个系统的控制核心,并采用一边喷洒一边配置的工作模式,有效地避免了因喷施药液配制过多而造成的农药浪费现象[3]。为实现水田作业机械的遥控操作,蒋蘋等人设计了一套基于单片机为核心的水田作业机械无线遥控驾驶系统[4]。针对温室大棚作业过程中温度、湿度和农药挥发物等对人身体健康影响,本文基于STM32微处理设计了温室大棚遥控作业车控制系统,包括上位机和下位机的设计;建立了作业车终端和远程监控端的通信,并用WinCC flexible组态软件设计了交互界面,实现操作者在监控站等场所对该农业机械的远程监控与遥控操作。

一、控制系统的总体结构设计

控制系统主要由上位机、通讯模块、下位机三部分组成。上位机主要由触摸屏和电缆组成,其中触摸屏的特点是界面清晰、容易操作;通讯模块选用蓝牙无线传输方式,该方式具有体积小、便于集成、低功耗、抗干扰能力强、成本低等特点;下位机为STM32控制器,STM32控制器是基于要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M3内核,具有高效的运算速度[5]。当小车在作业时,首先通过触摸屏发出任务信号,经过通讯模块使下位机STM32控制器接收到信号并控制继电器产生动作,从而驱动小车行驶。系统总体结构如图1所示。

图1 系统总体示意图

二、下位机的设计

下位机的设计既要满足数据的采集、处理、上传以及控制小车的运动,也需要操作简单、安全性高、稳定性强、系统响应快。下位机控制与数据采集系统如图2所示,主要有STM32中央微处理器芯片、电源电路、蓝牙无线传输模块、超声波测距模块、电机测速编码器、电机驱动模块、温湿度传感器、倾角传感器等。由于整个系统用电电压不同,所以需要电源电路为不同模块提供不同的电压值,把电池电压转变成适合给蓝牙和超声波模块以及处理器供电电压。STM32处理器接受上位机发送的指令并控制整个系统的运行与监控,蓝牙模块实现与上位机通信的功能,超声波模块则用来实现小车的避障。

(一)电源系统

电源系统为整个智能小车系统提供电能,持续稳定的电源是实现智能车安全运行的保障[6]。电源芯片参数如表1所示。

图2 下位机控制与数据采集系统

表1 电源芯片参数

电源系统主要有三部分组成:一是直流电动机的+12V电源;二是超声波传感器所使用的+5V;三是为中央微处理器提供的+3.3V电压。根据使用要求,此次电池选用12V2200MAH的锂电池。系统使用的+3.3V和+5V电压是需要由+12V降压稳压得到,所采用的芯片是适用于高效率线性稳压器的AMS1117-5和AMS1117-3.3两种芯片。为了增强电源系统的可靠性,减少被外界干扰的影响,系统在输入与输出两端加上滤波电容。

(二)处理器选型

下位机需要选择合适的微处理器作为系统的控制中心,目前常用的微处理器有PLC 、51单片机等类型。由于PLC主要应用在工业控制领域,而且价格昂贵;51单片存储较小,功能较少,所以本研究采用意法半导体公司生产的Cortex-M3内核的STM32F103系列的微处理器作为下位机的控制芯片[7]。该芯片具有超前的体系架构、高性能、低功耗、低价格等优点,以及创新的内核与外设;它拥有丰富的I/O端口,多达114个GPIO引脚,集成多个定时器、ADC、CAN总线、UART串口等通信方式。

(三)蓝牙无线通信

蓝牙模块是上下位机之间的通信连接装置,它的安全及可靠性极其重要,它所采用的技术有WIFI、蓝牙、GPRS以及无线射频通信技术,其采用无线数据传输,实现对遥控车的远程控制,控制范围可以达百米[8]。本次研究采用串口转无线通信模块,实现摆脱数据线束缚完成无线通信,全双工串口模式与蓝牙模块相连,实现双向可以同时收发数据,避免收发不能同时进行,同时还可以设置不同的波特率,改变数据传输的快慢

(四)作业车姿态与温湿度信号采集

由于遥控作业车工作路况不平整,会出现侧翻,因此作业车车身的平衡控制就十分重要。本次研究采用两种平衡控制相结合的方式,即机械结构减震缓冲平衡控制履带轮加缓冲弹簧的悬架系统。遥控移动作业车在工作时,通过使用倾角传感器测得作业车的左右倾角,然后通过RS232串口与STM32连接通信,通信协议采用MODBUS[9]。当检测到车身倾角过大自身不能完成调节时,作业车紧急停车发出蜂鸣声音并发送信息给上位机。图3为倾角传感器连接示意图。

图3 倾角传感器连接示意图

作业车的调平分为自动与手动两种,当进行自动调平时,控制系统会不断根据采集的信息进行作业车姿态的调整。其程序流程如图4。

图4 自动调平程序流程图

温室大棚内的温湿度环境对农作物的生长具有重大的影响,作业车上安装高精度温湿度传感器用来检测大棚内环境温湿度,采用多点采集定时发送给上位机温湿度信息,有利于及时调整温室大棚的小环境。

(五)超声波模块

为了避免遥控信号丢失或前方遇到障碍物,造成摔车或小车失控,在移动小车的前方,左、右侧加装HC-SR04超声波模块[10]。当触发信号端trig到一个大于10us高电平触发信号时HC-SR04模块驱动发生器发射超声波,同时echo端由低到高产生高电平,当超声波在遇到障碍物后返回到模块时,模块将echo输出的高电平下拉至低电平,完成测量,STM32检测记录所有时间T。障碍物与小车之距离即S=T*v/2。常见的单片机超声测距程序往往都需要等待电平的跳变,此时单片机处于等待状态不能及时处理数据,所以我们使用电平输入捕获的方式来得到声波所用时间。

(六)移动小车测速

增量式编码器是把车轮旋转速度转换成矩形电脉冲信号,用脉冲数量表示位移量同时可以检测速度[11]。本设计作业车测速采用的编码器属于增量型霍尔式编码器,其工作原理是利用霍尔效应原理制成的。其使用坚硬的铝合金封装外壳,通过齿轮和机械传动轴与内部元器件相连,具有良好的抗振动性、防腐蚀性、抗外界干扰与防污染性和宽温度范围等特性,要远优于传统的光电编码器。调速小车速度检测采用电机编码器获得,电机编码器输出脉冲信号,只需计算采样单位时间内脉冲个数就能得到小车的实际速度,所以采用外部中断和定时器配合的方法来获得速度值,即利用外部中断上升下降沿触发方式,在定时器确定采样时间10ms内记录编码器输出脉冲数量,进而计算出电机速度值。

(七)电机控制

对于作业车的移动控制采用的是STM32微处理器输出可调PWM信号,但是由于STM32的管脚只能输出微弱电流和3.3V的电压,无法直接驱动直流电机工作,所以必须使用专用的电机驱动器。电机驱动采用的是脉宽调制技术,通过调节PWM波的占空比实现小车的调速和差速转向[12]。初始化定时器TIM3配置定时器重装载值,确定矩形波频率打开PWM输出通道即对应STM32的I/O口PC6-PC7。小车需要加速时就增加PWM波脉冲占比,反之减少占空比数值。小车的基本运动控制通过控制函数来完成,控制函数有run(u8 num)、back(u8 num)、left(u8 num)、right(u8 num),其中num是对速度的调节,图5为输出PWM脉冲图。

图5 输出PWM脉冲图

三、上位机的设计

多功能遥控作业车的上位机触摸屏采用经济实用性价比较高的SIEMENS Smart 700IE 面板,能够准确地提供人机界面的标准功能[13]。800×480dpi宽屏显示设计让操作员具有更加舒适的视觉体验。采用WinCC flexible组态软件和模块化设计方法,实现高效、智能的组态方式[14]。

图6为小型多功能遥控作业车控制系统操作界面,登录界面包括用户名和登录密码,点击进入控制系统以后通过对图形对象的设置,与数据库建立连接,完成控制系统的建立,通过输入特定参数来控制作业车完成前进、后退、左右转向等动作,界面能够显示作业车的行驶速度,并能够对其速度进行实时调节,实现小车速度的调节和避障等功能。

图6 小型多功能遥控作业车控制系统操作界面

四、结论

本文研究并设计了针对大棚作业的小型多功能遥控作业车控制系统,该系统分上位机、下位机和通讯模块三部分。上位机采用WinCC flexible组态软件开发,用来设置小车行驶参数,可随时发布指令;下位机基于STM32F103微处理器并通过蓝牙通讯来实现小车前进、后退、转向及调平等动作的控制。实验表明,该系统为操作者提供了舒适的视觉体验,使操作者在远方监控室即可对机械和田间作物进行操控,大大降低劳动强度。同时,该项研究也为现代化农业提供一套先进的技术装备,为农业机械自动导航研究提供研究基础和平台,将促进农业产业的转型和升级。

猜你喜欢
下位遥控编码器
融合CNN和Transformer编码器的变声语音鉴别与还原
“遥控”老师
他是如何遥控引爆的
发射机房监控系统之下位机
基于双增量码道的绝对式编码器设计
应用旋转磁场编码器实现角度测量
景洪电厂监控系统下位机数据传输网络改造
围观党“下位”,吐槽帝“登基”
基于数字信号处理的脉冲编码器
CAN总线并发通信时下位机应用软件设计