动物瘤胃体外连续培养系统显示与控制系统的设计与实现
2015-08-01马明涛吉林农业科技学院吉林吉林132101
马明涛(吉林农业科技学院,吉林 吉林 132101)
动物瘤胃体外连续培养系统显示与控制系统的设计与实现
马明涛
(吉林农业科技学院,吉林 吉林 132101)
本设计是以STM32F103主控板为核心,充分利用其I/O引脚,并通过与操作系统的结合,实现系统各个任务之间的实时性的调度,使每个任务的执行时间得到一个非常准确的保证,并把该信息显示到TFTLCD显示屏上并且通过触摸屏进行一些参数的设置,实现了一个非常好的动物体外连续培养系统的人机交互界面,同时其它引脚控制电机来实现功能。STM32的高速处理速度以及超低功耗,给动物体外连续培养系统的电机控制带来了很大的改进。
嵌入式;电机;STM32;TFT
0 引言
人工瘤胃设备是动物医学反刍学研究的高精尖设备。目前比较先进的是吉林农业大学的瘤胃体外连续培养系统,但是设备使用PLC控制器作为电控的主控单元,无论是在成本上、设备所占用面积、以及操作的人机交互界面上都不符合现代社会对精密仪器的要求的需要。本文在现有瘤胃体外连续培养系统上进行改进,主控器采用目前较先进的嵌入式处理器。对动物体外连续培养电控系统,主要的研究内容有:控制大型步进电机,采集甲烷、氨气、二氧化碳的浓度参数。利用现有的性价比较高的STM32F103处理器作为主控制器,用μC/ OS-II作为操作系统,用320*240 TFT作为人机交互界面。 原理图见框架图1。
图1 框架系统
1 STM32F103微处理器
系统架构微处理器STM32F103是意法半导体公司推出的高性能32 Cortex-M3的,作为工业控制的核心处理器。通过多层AΗB内部总线架构的处理器连接,内部整合集成丰富的外设:USART,bxCAN,SPI,ADC等。微处理器是一个100引脚,该芯片集成了128 KB闪存,高达64 KB的SRAM。一个系统定时器(内部看门狗定时器)主要用于制作嵌入式操作系统移植。有了这个定时器,你可以很容易地实现所需的便携式操作系统时钟中断。此计时器的实施,极大地方便了μC/ OS-II系统在处理器上移植[1]。
2 显示系统的设计
在嵌入式系统的图形用户界面需要轻型,占地面积小,高性能,高可靠性,便携性,可配置等特点。 μC/ GUI是这样专为嵌入式图形用户界面软件设计的应用程序。 μC/ GUI内核是非常小的,含有一个窗口,并控制整个μC/ GUI。系统的管理只需要30~60K的ROM中的,2~6K的RAM(基于窗口的数量),和1. 2K堆栈空间可以流畅运行。μC/ GUI是完全用ANSI2C编译的,所以它是与处理器无关的,它可以很容易地移植到不同的操作系统和嵌入式微处理器,并支持任何规模大小图形液晶显示器。它在任何使用独立的处理器和LCD控制器之外的有效的图形用户界面的接口,并支持单色,灰度和彩色显示。它的2D图形库和窗口管理功能,可以让我们轻松实现类似于嵌入式系统Windows图形界面。
TFT-LCD它是一个薄膜晶体管液晶显示装置。TFT-LCD和无源的TN-LCD,STN-LCD的简单矩阵不同的是每个像素设置有薄膜晶体管(TFT),能有效地克服非选通时的串扰,静态特性显示液晶屏与扫描线数无关,从而大大提高了图象质量。 TFTLCD包含16条数据线,读写线,指令/数据控制线,片选线,液晶硬件复位线,背光控制线。STM32F103VET6作为MCU,FSMC一个16位的并行接口,以18080接口的定时。为了实现彩色显示和效率的平衡,在使用16位64K彩色接口模式。有五个红,六个绿,五个蓝色的各像素来代表共16个,320 * 240的分辨率。图像占据320 * 240* 2 =153600字节[5](图2)。
图2 TFTLCD电路
3 步进电机
3.1 硬件部分
系统中用的TΗB6128是东芝公司生产的57系列步进电机。TΗB6128细分型两项混合式步进电机驱动控制芯片,最高耐压40V (DC),适用驱动电流小于2A,外径小于57毫米的两相混合式步进电机,如24、28、39、42、57等步进电机,具有快衰、慢衰、混合式衰减三种衰减方式,内置温度保护和过流保护[6]。驱动原理:STM32的通用定时器3产生的两路PWM输出为电机1和电机2提供稳定的驱动脉冲。通用输入输出口PC1、PC2、PC3用来控制电机1的细分设定,通用输入输出口PB12、PB13、PB14用来控制电机2的细分设定。电路原理图如图3。
3.2 软件部分
STM32的定时器除了TIM6,TIM7外都能用来产生PWM波输出,其最多可以同时产生30路PWM输出。它不像51单片机那样,需要通过输出高低电平来模PWM的输出,只需要配置定时器和端口,通过软件改变占空比即可,不同的占空比能对电机起到调速的作用。
图3 电机原理图
PWM输出配置[6]
(1)开启TIM3时钟,配置PC6、PC7为复用输出。通过设置APB1ENR开启TIM3的时钟,配置PA7为复用输出,打开TIM3_ CΗ2、TIM3_CΗ3;(2)设置TIM3的ARR和PSC 。打开TIM3时钟之后,设定ARR和PSC两个寄存器的值来控制PWM周期的输出;(3)设置TIM3_CΗ2、TIM3_CΗ3的PWM模式。设置TIM3_CΗ2为PMW模式(默认是冻结的),因为系统需要1KΗz的方波作为电机的驱动脉冲,所以通过配置TIM3_CCMR1的相关位来控制TIM3_CΗ2的模式来输出1KΗz方波后保持不变即可;(4)设置TIM3的CΗ2输出,使TIM3能用。设置完后,启动通用定时器TIM3的通道2、通道3以及TIM3。前者由TIM3_CCER1设置,它是一个单路开关,后者通过TIM3_CR1设置,是整个TIM3的总开关。设置这两个寄存器,可以看到TIM3通道2的PWM波输出。
通过以上步骤,STM32的PC6和PC7就可以控制TIM3的CΗ2、CΗ2输出 PWM波了。
4 结语
系统上电,触摸屏控制正常,电机按照触摸屏动作进行正反转、调速。二氧化碳传感器、甲烷传感器实时监测气体浓度,并且将监测的气体浓度上传到系统内部,通过液晶屏输出显示。各个部件均按照设计正常工作和运转,系统改造设计成功。
[1]基于MDK的STM32处理器开发应用[M].北京航空航天大学出版社,2008.
[2]任哲.嵌入式实时操作系统原理及其应用[S].北京航空航天大学出版社,2006.
[3]奋斗嵌入式开发工作室.嵌入式实时操作系统ucosII在奋斗板上的应用[J].2011.
[4]周立功.ARM嵌入式系统实验教程[M].北京:北京航空航天大学出版社,2005(01).
[5]基于MDK的STM32处理器开发应用[M].北京航空航天大学出版社:2008. [6]高细分步进电机集成芯片THB6128[ EB /OL].
马明涛(1972-),男,吉林吉林人,副教授,主要从事:电子电路和信号的检测、传输方面的研究。
10.16640/j.cnki.37-1222/t.2015.21.221
吉林省教育厅“十二五”科学技术研究项目 (编号2013342)