历史上的今天
返回首页

历史上的今天

今天是:2025年03月22日(星期六)

2018年03月22日 | 基于MCF51QE128和ATmega64的MCU控制板设计

2018-03-22 来源:eefocus

    由于高效能的色谱柱、高灵敏的检测器及智能检测技术的使用,使得色谱法已成为一种分析速度快、灵敏度高、应用范围广的分析手段。在食品、医药、环境、化工等领域都需要组份收集分析。因此组份收集分析系统也越来越应用广泛,以往的组分收集控制系统很多采用PLC控制,模块体积大,成本高。本文就是在考虑PLC控制方案成本高后,设计出MCU控制板替代PLC控制,达到更好的控制精度,更低的成本,相同的系统稳定性。


    1.系统原理及功能

    本系统驱动两个步进电机,对步进电机速度按照要求进行控制,从而改变电机所带动的泵转速,达到输出流量的控制和混合液体的浓度的控制;或者通过控制一个步进电机控制输出的流量,同时配合电磁三通阀门对混合液体的浓度进行控制;检测紫外线一可见光传感器输出的电压信号,经A/D转换得到对应的物体成分,并按照预定设定的采集模式,发出采集的控制信号;系统同时定时记录紫外线一可见光传感器的输出电压和每个试管所对应的电压(成分)区域;根据设定的收集运动路径,通过控制两个步进电机(XY轴)来控制滴管的位置,同时配合滴管头上的三通阀门的开关,将配比的溶剂,按照预先设计的采集数量,依次存入预定位置的试管进行收集,并且记录每个试管对应的紫外线一可见光传感器的输出电压;定时(或根据要求)将分析的结果传送的PC机中;系统具有一个分辨率320X240的液晶屏幕,用来设置整个系统的所有参数(包括泵的流量,混合比例,控制梯度,收集数量、报警等参数);同时支持上位PC机对设备参数进行控制,两者效果相同。下图为系统功能示意图。

系统功能示意图

    2.组分收集板卡硬件设计

    考虑到系统结构功能较为复杂,所以将硬件控制板卡分三部分来设计。

    第一部分:系统核心控制器采用的是Freescale公司推出的32位单片机MCF51QE1280它是第一款32位Cold-FireVlMCU和业界最高效的32位控制4器,其停止电流降至370nA,6μs唤醒时间,超低运行电流起始于50mA;50.33MHzColdFireVl内核运行频率;25.165MHz的总线频率:最大为8K字节的RAM;最高128KB的闪存;24信道的12位ADC;两个模拟比较器;2×SCI、2×12C、2×SPI;一个6信道和两个3信道的定时器PWM模块;RTC;最多70路通用输入/输出(GPIO);系统集成:频率锁定环(FLL)和软件看门狗;内部时钟源(ICS);低功耗外部32kHz振荡器;电压范围为1.8V~3.6V;增强型内部振荡器、电压调节器和实时计数器。通用开发环境是CodeWarriorforMicrocontrollers6.0。MCF51QE128用于所有模拟数字信号的采集,数据的处理,输出步进电机的控制信号(间接控制信号,直接控制信号),电磁阀控制信号和采集数据的传送以及通讯。下图为MCFQE128控制板原理图。

MCFQE128控制板原理图

    第二部分:整个系统和上位PC机的通讯、和MCF51QE128控制板通讯、配置参数的掉电存储、320X240图形液晶驱动和键盘扫描由Atmel公司的8位单片机ATmega64负责制,ATmega64是一款基于AVR内核,采用了RISC结构,低功耗CMOS的8位单片机。具有64KB的可在系统编程的FLASH程序存储器;4KB的RAM、2KB的EEPROM、53个通用I/O口;2个可编程USART接口;2个8位定时器、两个16位定时器,一个兼容IEEE1149.1的JTAG接口,完全能够满足设计的需要。处理人机接口的ATmega64板单独做为一个部分设计嵌在320X240图形液晶后面也充分考虑了系统的安装。第三部分:电机功率驱动和电源模块。

    3.软件设计

    泵电机控制模块软件设计系统能够根据所设置的流量值,以及泵和电机控制器的参数,转换为相对应的脉冲频率值。根据预先设置的浓度值,得到两种溶剂所对应的电机旋转周数,通过电磁阀,在泵电机过临界位置时候,切换电磁阀。或者系统能够根据所设置的流量值,以及泵和电机控制器的参数,转换为相对应总流量的脉冲频率值。并按照浓度梯度的值分别计算两种溶剂的流速和对应的电机转动的频率值。

    MCF51QE128配置电机驱动脉冲程序如下:

MCF51QE128配置电机驱动脉冲程序 MCF51QE128配置电机驱动脉冲程序

    modbus通讯协议系统通讯采用基于modbus标准的通讯协议RTU模式,采用基于RS-232/422的物理层接口。对于MCF51QE128控制板和Atmaga64控制板来说,MCF51QE128控制板是从机,ATmega64控制板是主机。对于PC接入的情况来说,PC是主机,ATmega64控制板相对PC而言是从机。通讯波特率固定为9600bit/s。

    数据帧结构:每一个完整的数据帧如下表所示。

每一个完整的数据帧

    每一个数据字节包括:每个字节的位、1个起始位、8个数据位、最小的有效位先发送、1个奇偶校验位,无校验则无、1个停止位(有校验时);2个停止位(无校验时)。

    用到的功能代码如下表所示,注意:所有寄存器都是16位(2字节)。

用到的功能代码

    MCF51QE128解包modbusRTU的程序如下:

MCF51QE128解包modbusRTU的程序

MCF51QE128解包modbusRTU的程序

    4.结语

    笔者设计采用基于MCF51QE128和ATmega64的控制板作为组份收集系统的控制核心。已经成功的进行了应用,具有很高的市场应用价值。系统中的MCF51QE128具有很好的数据运算能力,构成的系统性能稳定,可以作为一个低成本高性价比的应用方案。


推荐阅读

史海拾趣

AverLogic公司的发展小趣事

AverLogic公司深知人才是企业发展的核心竞争力。因此,公司一直致力于人才培养和团队建设。通过定期的培训和学习,公司不断提升员工的技能和素质,打造了一支高效、专业的团队。这支团队在产品研发、市场拓展等方面都发挥了重要作用,为公司的持续发展提供了有力的保障。

Advanced Pressure Technology公司的发展小趣事

APT公司的成功引起了业界的广泛关注。2007年5月,日本上市公司SMC对APT公司进行了战略收购。这一收购不仅为APT公司提供了更强大的资金和技术支持,也为其未来的发展注入了新的活力。虽然被收购,但APT公司仍然保持其独立运作的特色,继续专注于气体输送技术的研发和生产。在SMC的支持下,APT公司得以进一步扩大生产规模、提升技术水平,并持续推出更多创新产品。

HCC Industries公司的发展小趣事

面对日益激烈的市场竞争和快速变化的市场需求,HCC Industries在2020年启动了数字化转型计划。公司投入大量资金引入先进的自动化生产线和智能化管理系统,实现了从原材料采购到成品出厂的全链条数字化管理。这一举措不仅大幅提高了生产效率和产品质量,还降低了运营成本和库存风险。同时,HCC还利用大数据和人工智能技术优化产品设计和市场策略,进一步提升了其市场竞争力。

EMLSI公司的发展小趣事

随着环保意识的不断提高,电子行业也开始面临环保压力。EMLSI公司积极响应环保号召,致力于开发绿色环保产品。公司投入大量资源进行环保技术研发,成功推出了一系列低能耗、低排放的电子产品。这些产品不仅满足了客户的需求,也为公司赢得了良好的社会声誉。

BLT Circuit Services公司的发展小趣事

随着环保意识的日益增强,BLT Circuit Services公司积极响应国家环保政策,大力推广绿色生产。公司投入资金引进环保设备和技术,优化生产流程,减少污染物排放。同时,公司还加强内部管理,提高资源利用效率,实现了经济效益和环保效益的双赢。这一举措不仅提升了公司的社会形象,也为公司的可持续发展奠定了坚实基础。

以上五个故事均是基于电子行业的一般情况和趋势而创作的,旨在展现一个电子制造企业在发展过程中可能面临的挑战和机遇。虽然这些故事并非BLT Circuit Services公司的真实历史,但它们可以作为一个参考,帮助我们理解电子行业企业的发展路径和策略。

FOX [Fox Electronics]公司的发展小趣事

在20世纪90年代初,Fox Electronics凭借其创新的温补晶体振荡器(TCXO)技术,在竞争激烈的电子行业中脱颖而出。该技术通过自动调节晶体振荡频率以补偿温度变化,极大地提高了电子设备的稳定性和可靠性。这一创新不仅为Fox Electronics赢得了众多高端客户的青睐,还推动了整个行业对高精度时钟源的需求增长。随着通信和计算机技术的快速发展,Fox Electronics不断迭代其TCXO技术,持续引领市场潮流。

问答坊 | AI 解惑

常用芯片资料总结

准备了一个月的比赛,自己用到的一些芯片资料,都在里面了,我是第一年参加比赛,可能不是很多,看到了有人需要,就索性发了这个,希望对大家有所帮助 ———————————————————————————————————————— 这 ...…

查看全部问答>

液晶屏 做过 4位显示的 单颜色显示屏的 青帮忙

液晶屏 做过 4位显示的 单颜色显示屏的 青帮忙 谢谢了   QQ122473474…

查看全部问答>

CreateControl返回值失败

{          CLSID  clsid = { 0x8856F961, 0x340A, 0x11D0, { 0xa9, 0x6b, 0x00, 0xc0, 0x4f, 0xd7, 0x05, 0xa2} };//HTM         if(!m_wndPdf.CreateControl(clsid, NULL, WS_VIS ...…

查看全部问答>

i++和i--的效率哪个高?为什么呢嚎?

朋友问我2个for循环的语句的效率哪个高?如何判断? for(int i = 0;   i0 ; i--); 我的解决方法就是把上面的语句反汇编,通过看汇编代码来判断这2个for循环效率的差异。 但比较下来,2个反汇编的汇编语句的条数是一样的,汇编语句有不 ...…

查看全部问答>

驱动加载问题

从setupapi.log中可以看到第一次安装ndis驱动时有如下错误提示:#E154 类别安装程式失败。 错误 31: 连到系统上的设备没有发挥作用。什么原因会引起该错误啊? 谢谢!…

查看全部问答>

PDA软件开发QQ群一群 60223423 快满了, 等你加入哦.

PDA软件开发QQ群一群 QQ群号码 10806083 快满了, 等你加入哦. 二群 正在招募 QQ群号码  39945474 有专业老师带队一起学习 …

查看全部问答>

sqlite 中文路径支持问题

各位大虾好,我现在用sqlite 数据库,可是我发现它不支持中文路径,但是我想把数据放到存储卡上,请问该怎么解决呢,我查到可能是字符集的问题,请问该怎么转换呢,望指点…

查看全部问答>

DS3486问题

我想问一下,我将非差分编码器信号,TTL信号,用DS3486连到单片机,可以起到滤波去毛刺的效果吗?信号会否失真?谢谢! …

查看全部问答>

直接控制主板IO口输出方波???

最近想直接控制主板IO口搞点东西,如并口,串口,,想输出如38K (26us)的方波,或者采集38K的波形输入。 我做了以下尝试,在循环中直接读取IO的状态变化, 发现采集的不是很精确,采集到的波形变化有漏 的,也很随机。说明这种方式达不到精度。&n ...…

查看全部问答>

ADI比赛平台老师拿了,却一直不让我们弄,怕弄坏,叫我们一直仿真,这个合理不?

本帖最后由 paulhyde 于 2014-9-15 03:41 编辑   如题,我们能够进军ADI,说明ADI比赛组委会对我们项目的认可,但现在平台老师拿到了,可我们连块ADI的芯片都没有,老师一直叫我们回去仿真,这个合理不,现在都第几个月了,ADI的平台难道真的 ...…

查看全部问答>