单片机的控制系统设计

时间:2022-02-06 07:10:52

单片机的控制系统设计

1装置结构及工作原理

该穴盘苗自动取苗机构用来移取128穴的穴盘苗,其中苗盘输送带、秧苗顶杆以及导苗板是该取苗装置的关键部件,能够完成苗盘的输送、一次16株苗的整排顶出以及导出工作[4]。隔板式苗盘输送带倾斜放置,其倾斜角可通过支撑杆进行适当调整;苗盘输送定位之后,会沿着苗盘输送带向下整排地间歇移动,固定在支撑架上的秧苗顶杆每次从苗盘最下一排秧苗处的小孔顶出整排秧苗;秧苗顶出后落入导苗板,通过导苗板对秧苗的倒置和扶正,再经由移栽机的秧苗传送机构送入栽植器,完成取苗工作。

2机构控制要求及动力系统选择

2.1机构控制要求本文中的穴盘苗自动取苗机构采用的是从穴盘底部整排顶出的方式来同步实现取苗和投苗工作过程,运动规律简单,避免了传统取苗机械手取苗、投苗过程不同步。为了实现苗盘间歇式输送的精确定位,保证秧苗能够被有效地顶出,需要对苗盘输送定位的精度问题进行分析和研究。鉴于田间露地移栽环境的恶劣性和复杂多变性,也要充分考虑到系统的抗干扰性和稳定性。2.2取苗机构动力系统选择苗盘输送带、秧苗顶杆、导苗板是取苗机构3个核心工作部件。工作过程中,完成苗盘的间歇式输送、秧苗顶杆的顶出和缩回动作。需要不同工作过程中的动力系统,完成取苗机构的取苗动作。2.2.1苗盘输送动力系统由于顶杆位置固定,为保证秧苗顶杆无干涉地插入底部小孔并顺利顶出秧苗,需要实现苗盘输送取苗机构中苗盘的间歇式输送定位。本文采用86BYGH103型步进电机驱动系统来提供动力,选用步进电机进行精密定位。与传统的定位方法相比,具有定位精度高、稳定性好等优点[5]。2.2.2秧苗顶杆伸缩动力系统由于穴盘秧苗根部的基质易碎,要求秧苗顶杆对穴盘秧苗顶出的作用力能很好地受到控制,因此秧苗顶杆顶出和缩回的动力系统选择气压传动来驱动[6]。秧苗顶杆取苗投苗动作的气路控制系统主要由空压机、过滤调压单元、电磁阀、节流调速阀和气缸等组成,系统结构图如图2所示。

3取苗机构控制系统硬件设计

硬件电路的设计不仅要考虑取苗机构系统功能的要求,还要考虑到软件设计实现时的简单方便[7]。本文采用单片机系统来对该穴盘苗自动取苗机构进行控制,单片机型号选择国内宏晶科技推出的基于新一代增强型8051内核的STC89C54系列的芯片。该单片机控制系统主要控制取苗机构完成苗盘的间歇式步进输送定位以及秧苗顶杆的气动伸缩取投苗过程,还具有苗盘计数功能。控制系统能够对已移栽完的空苗盘数进行检测和计数,并通过液晶显示器LCD显示出来,同时还具有故障报警功能,对取苗机构中苗盘输送带或者秧苗顶杆的停动通过蜂鸣器和发光二级管LED进行声光报警。此外,该控制系统能通过按键来控制取苗机构的开启和暂停,并通过LED显示当前工作状态。控制系统的硬件功能结构图如图3所示。该取苗机构控制系统硬件部分上述功能的实现采用模块化的设计方法,以STC89C54RD+单片机作为控制器,采用了模块化的设计方法。根据系统的硬件功能将控制电路划分为处理器模块、电源模块、信号采集模块、控制量输出模块以及人机交互模块,并分别对各部分电路模块进行了器件选型、控制引脚分配和电路设计。硬件电路设计简单可靠,PCB电路板布局布线合理、实用、抗干扰。系统硬件模块结构图如下图4所示。各模的功能如下:1)处理器模块。处理器模块以STC89C54RD+微处理器为核心,利用片上定时器模块以及中断功能对输入的苗盘定位信号、有无苗信号以及秧苗顶杆位置信号进行检测,并根据控制量输出程序来控制执行机构响应。2)电源模块。为各模块提供合适的电平,保证系统正常地上电工作。3)信号采集模块。实时监测苗盘间歇式输送的位置、秧苗顶杆伸缩的位置以及空苗盘计数信号的输入,并将信号处理之后送入处理器模块。4)控制量输出模块。取苗机构中苗盘的间歇式步进输送定位以及秧苗顶杆的气动伸缩取投苗过程的实现是通过处理器发送控制信号至输出模块,并通过输出模块控制相应的执行机构来完成的。5)人机交互模块。通过按键来控制取苗机构的开启和暂停,通过LED发光二级管来显示系统的工作状态,通过LCD液晶显示模块来显示空苗盘数,通过蜂鸣器和LED发光二级管对系统故障进行声光报警。

4取苗装置控制系统软件设计

取苗装置整个软件设计采取主循环加中断处理程序的模式。软件系统借助于硬件平台,实现数据的采集、传输、处理、存储以及发送功能。本设计采用C51语言进行程序编写,采用KeiluVision2集成开发环境进行软件开发。程序的设计采用模块化的设计方法,以硬件模块为基础将整个应用程序相应地划分为几个独立的程序模块:信号采集程序模块、控制量输出程序模块、人机交互程序模块。整个软件系统部分由这几个程序模块和主控程序组成,各个独立的模块可以先单独进行设计和调试,最后将它们与主控程序装配连接成一个整体进行综合调试。4.1主程序设计主程序的主要功能是完成各模块的初始化、全局变量的初始化及其他参数的初始化,设置中断方式和计数器工作方式,有序管理并合理调用各个子程序模块来完成系统功能等。主程序流程图如图5所示。4.2信号采集程序设计在本设计中,对苗盘输送的位置信号和空苗盘计数信号的采集是通过单片机内部的计数器来实现的。计数器T0记录空苗盘脉冲信号,完成对移栽工作量的统计;计数器T1记录苗盘输送位移的反馈脉冲,在系统对计数器进行初始化后,计数器便开始进行计数。通过读取计数器T0和计数器T1的计数值,即可获得所需的计数信息以及有关的位移信息;而秧苗顶杆顶出时的定位信息和退回时的复位信息通过读取P1.2和P1.3口的高低电平值来获得。4.3控制量输出程序设计取苗机构中苗盘的间歇式步进输送定位、取投苗过程中气动秧苗顶杆的伸缩动作以及两者的先后执行顺序是由控制量输出程序来控制完成的。4.3.1苗盘间歇式步进输送定位控制程序设计苗盘的间歇式步进输送定位控制包括输送时步进电机的升降速控制以及定位时输送位移的自适应Fuzzy-PID控制。步进电机升降速控制程序设计采用的是经过“阶梯升降法”离散化处理之后的S形阶梯拟合曲线来实现的,研究中采用按段拟合至给定频率的方式来实现。考虑到曲线升速段与降速段的对称性,只研究升速段即可。根据实际情况以及步进电机特性所确定的升降频曲线,将曲线的升速段等频率间隔划分为20级,假设步进电恒速段运行的频率为f0,则升速段所划分的各级分段频率为:fi=i/()20·f0,i∈1,()20且i为整数。根据升降频曲线求出各级分段频率的分段时间ti,i∈1,()20且i为整数,进一步求出每一级频率所运行的时间Δti=ti+1-ti,则每级频率所运行的步数为:Ni=Δti·fi,i∈1,()20且i为整数。由此可建立一个频率-步数表,并将该表存储于内存的一个数据存储区内。程序运行时通过查表按顺序进行取数,每次取出一级频率和该频率所运行的脉冲数,由此来实现步进电机按S形曲线进行升降速的过程[8]。自适应Fuzzy-PID定位控制算法的程序设计过程中,对于苗盘间歇式输送位移的控制采用参数自整定Fuzzy-PID控制算法来实现。模糊控制算法实现的程序一般包括两部分:一部分是离线进行模糊矩阵运算计算模糊控制查询表的程序;另一部分是在模糊控制过程中在线计算输入变量(即误差和误差变化率)的值,并将它们进行模糊化处理,通过查找查询表后再做输出处理的程序。4.3.2取苗动作执行程序设计取苗动作执行过程中首先对苗盘进行输送;当苗盘输送到位后,气动顶杆伸出,顶出整排秧苗;秧苗被顶出之后,气动顶杆缩回至复位。这样,取苗系统完成了一次整排苗的定位及其取出过程。依据此执行过程完成取苗动作程序设计。4.4人机交互程序设计4.4.1按键扫描程序设计按键所使用的开关为机械开关,在闭合与断开的瞬间均存在着抖动,抖动时间一般为5~10ms,为了保证按键能够被正确地识别,本设计采取软件延时滤波的措施来消除抖动的干扰,即在检测到按键按下后延时10ms再次检测按键,如果再次检测结果相同则确认为按键按下。在按键按下的同时,LED发光二级管会自动点亮显示按键所指示的工作状态。4.4.2苗盘计数显示程序设计由计数器记录空苗盘脉冲信号,计数器T0的计数值即为空苗盘数。苗盘计数显示器选用的是LCD1602液晶显示模块。该模块的读写操作、屏幕以及光标的操作均通过指令编程来实现。4.4.3故障报警程序设计取苗机构工作过程中出现故障时,如苗盘输送带停止输送或者秧苗顶杆出现停动,系统能够进行声光报警。声光报警电路的控制端口为单片机P2.6口,将P2.6口置为高电平时,LED发光二级管发光,蜂鸣器Buzzy发出警报。其中,故障的判断可以由苗盘输送带停动故障标志F3以及秧苗停动故障标志F4来判断。

5结语

本文针对一种顶杆式穴盘苗自动取苗装置,设计了其控制系统。以STC89C54RD+单片机作为控制器,采用模块化的设计方法,分别对各部分电路模块进行了器件选型和电路设计,同时进行了PCB电路板的设计。硬件电路设计简单可靠,PCB电路板布局布线合理、实用、抗干扰,并采用KeiluVision2集成开发环境进行软件开发。通过控制系统软硬件的结合来控制取苗机构完成预定的取苗移栽作业过程。测试结果表明,该控制系统能够满足苗盘输送的定位精度要求,在后续的田间试验中将继续对系统进行调试,通过系统性能测试结果,对系统的软硬件进行进一步的优化和改进。

作者:李华 曹卫彬 王侨 刘姣娣 付威 单位:石河子大学 机械电气工程学院

上一篇:数据采集的系统设计 下一篇:三维显示系统设计