来源:更新时间:2020-08-13 09:36:38点击次数:3325次
1前言
伴随着电子信息技术及电子信息技术的发展趋势,嵌入式操作系统的运用早已深层次到各种商品:智能家居产品、工业控制系统、航天航空、医疗、国防等各种各样智能化系统数据机器设备。
嵌入式操作系统就是指以运用为管理中心,以电子信息技术为基本,手机软件及硬件配置能够按必须裁剪而且对作用、可信性、成本有严格管理的专用型计算机软件。其在称重仪表的运用将推动称重仪表的智能化系统、微型化、数字化发展趋势。
称重仪表的发展趋向是高精密、快速响应感应器的数据信号,可是传统定义的51单片机次序程序编写大循环系统定义,A/D变换釆用终断、查寻方法,再再加离散变量元器件构成系统软件的延迟等要素,巨大的阻拦了实用性要求的完成。因而开发设计根据SOGSystemOnChip)上面系统软件的多个任务系统软件智能称重仪表刻不容缓。
在系统软件整体规划及设计阶段开展系统设计方案时,选用Keil企业RTX51嵌入式即时操作系统做为多个任务开发工具RTX51Tiny,适用51系列产品的全部继承型号。由于RTX51Tiny不但是完全免费的,并且功能齐全,能够灵便的分派硬件配置服务器资源(CPU,储存器等)给每个每日任务,对内嵌式操作系统在智能称重仪表行业的运用具备里程碑式的实际意义。[1][2]
2硬件开发
2.1主CPU:
系统软件的硬件开发釆用英国Cygnal企业的C8051F020,C8051F020元器件是彻底集成化的混合通信系统级MCU集成ic,C8051F020具备64个数据I/O脚位,下边列岀了一些关键特点:髙速流水线结构的8051适配的CIP-51核心达到25MIPS飞速非入侵式的在系统软件调节插口;片内带PGA真实12位100ksps的8通道ADC;仿真模拟多通道电源开关,2个12位DAC,可编程控制器升级时钟频率;64K字节数可在系统软件程序编写的FLASH储存器;4352(4096+256字节数的片内RAM);可寻址方式64K字节数详细地址室内空间的外界数据信息储存器插口;硬件配置完成的SPISMBus/FC和2个UART串行通信;五个通用性的16位计时器;具备五个捕获/较为模块的可编程控制器电子计数器/计时器阵列;片内看门狗1计时器VDD监控器和温度感应器。
具备片内VDD监控器看门狗1计时器和数字时钟震荡器的C8051F020是真实能单独工作中的上面系统软件,全部仿真模拟和数据外接设备均可由客户固定件配备为也就能或严禁,FLASH储存器还具备在系统软件再次程序编写工作能力,可用以非易失性数据储存并容许当场升级;8051固定件片内JTAG调节电源电路,容许应用安裝在最后软件系统上的商品MCU开展非入侵式不占有片内資源飞速在系统软件调节,该调节系统软件适用观查和改动储存器和存储器,适用中断点、切入点、单步及运作和关机指令。在应用JTAG调节时,全部的仿真模拟和数据外接设备都可以多功能运作,每一个MCU都可以在工业生产温度范围-45°C至Ij+85°C内,应用2.7V-3.6V的工作电压,工作中端口号I/O/RST和JTAG脚位都允许9V的输入数据信号工作电压。
2.2A/D控制模块
变换构件釆用变换技术性,真实的髙速高精密AD转换,采用独特优化算法及硬件配置解决完成16位之上精密度。
2.3通信控制模块
标准配备设计方案RS232串口通信,便捷与PC机通信,PC机上的程序流程釆用VB定编,依据实际的机型修改下位机的工作中主要参数。那样要是将上位机软件软件安装在笔记本中,能够便捷当场维护保养、改动整定值主要参数。
2.4显示信息及电脑键盘控制模块
选用超低温液晶显示屏,自制各种各样中文字库,电脑键盘选用轻按银浆功能键,能够融入各种各样溫度标准。
3软件开发
3.1下位机开发软件:
应用KeilC51V7.0来开展手机软件的撰写和调节,所有编码用C语言进行,运用Keil适用的RTX51Tiny内嵌式即时操作系统做为专用工具。该操作系统是一个准并行处理的多个任务自然环境,和Windows等当代操作系统类似,便是将CPU的数字时钟切成不大的相等時间片,随后分派给每一个每日任务,当这一每日任务实行了给出的時间片段以后,还没完成,则维护当场以后,自动跳转到下一个每日任务实行,那样持续的循环系统实行之,事实上,同一時刻只有一个每日任务在实行,可是因为時间片十分短,一般为十米s量级,因此相对性上而言,就等同于好几个每日任务在另外实行了。RTX51最少方式数最多可适用16个每日任务,非常少的內部RAM及ROM,不用拓展外界RAM,它运用51內部的定时执行0来造成整点报时,能考虑大部分简易自动控制系统的必须。
运用RTX51操作系统的准并行处理特点,对每日任务控制模块开展尺寸适度的划分,并对每个每日任务间的通讯和延迟开展细心的确定。要强调的是在RTX51下开展多个任务程序编写和过去的次序单任务程序编写有下列好多个特别注意的不同之处:
(1)多个任务程序编写CPU是轮流实行每一个每日任务,因此能够将每一个每日任务设计方案成无限循环的方式,持续反复的开展数据信息测算或是浏览硬件配置,也不会危害其他每日任务的实行,当一个每日任务的数据信息测算进行以后,能够根据os_wait函数将CPU拿出实行其他每日任务;而传统式的大循环系统次序单任务方式却占有了全部的CPU資源,特别是在静态变量多时,常常得担忧是不是实行時间过长而不可以立即回应外界的多线程恶性事件。
(2)多个任务程序编写是沒有main函数的,它全自动从taskO开始循环系统实行task1、task2…,下边得出taskO
和taskl的实例程序流程:#ineludeviodtask0(void)_task_0(init_system();os_set_slice(l000);os_creat_task⑴;os_wait)
}
voidtask1(void)_task_1(while(l)
〃起动M)
os_wait) 〃每日任务撤出
}
3.2数字滤波
数据收集后的数字滤波一直是称重仪表的重要,在文中的软件开发中,专业设计方案一个数字滤波每日任务,用于进行数据收集后的滤波器工作中。历经滤波器后再实行显示信息、通信等每日任务。
文中精确测量一个相对性不会改变的直流电数据信号及应变仪輸出,能够使用过釆样和求平均值技术改进合理屏幕分辨率[3]。
假如一个秤重设备务必精确测量一个宽范畴的净重而另外又要能辨别不大的净重转变则过采样和求平均值能提升精确测量的合理屏幕分辨率。
对ADC精确测量数据信息求平均值等额的于一个降取样低通滤波器,完成过采样和低通滤波器的数据信号分析全过程一般被称作刀具半径补偿,从这一实际意义上说使用过釆样完成2个12位ADC码中间的插值法求平均值的样版总数越大则低通滤波器的可选择性越强插值法的实际效果就就越好。因而能够做到16位之上的屏幕分辨率,融入秤重的规定。
可是因为过采样是以放弃時间来提升精密度,对实用性规定较高的商品,文中釆用独特解决的硬件配置、手机软件来完成,防止了系统软件数据信息创建延迟时间,能够在系统要求的延迟内做到18位之上精密度,另外考虑釆样的即时显示信息,真实保证智能称重仪表的规定。
3.3温度补偿
因为工作温度的规律性转变,相匹配的感应器的精密度受溫度危害很大,文中釆用的SOC自身含有温度感应器,能够依照工作温度的转变特点来自动更新精密度纠正指数,真实做到智能化系统称重仪表的作用。重入难题,处理資源矛盾和重入的方式能够参照有关参考文献[4"
本系统软件具体应用证实:本系统软件平稳靠谱,实用性比釆用传统式C51程序编写更为优异,可信性高些。本系统软件在SOC单片机设计上釆用了RTX51嵌入式操作系统,在智能称重仪表主要用途具备一定的超前的实际意义。
文章来源于网络转载,侵删
×