当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]基于SOPC的定量称重控制系统的设计与实现

摘要:针对全自动定量称重控制系统所要求的高精度、高可靠性、多功能等特性,给出了基于多Nios II嵌入式软核处理器的全自动定量称重控制系统的可编程片上系统(SOPC)软硬件设计方法。采用称重传感器、模数转换器AD7730、去极值平均滤波算法和预测控制算法,实现了颗粒、粉末状等物料的高精度测量及自动包装控制。该系统具有开发周期短、成本低、可靠性高、易于扩充等特点,现场测试结果表明,系统测量称重误差小于0.2%。
关键词:SOPC;Nios II软核处理器;FPGA;AD7730;动态称重 

Abstract: For the needs of high accuracy, high reliability and multifunction of a weighting control system, the software and hardware design methods of a SOPC based on multiple Nios II Embedded softcore CPUs are given. Weighing senor,A/D converter AD7730, the mean filter algorithm which can remove extreme values and the predictive control algorithm are used to implement the high precision measurement and the automatic pack control of the pulverized material. The system has the advantages of low cost, high stability, short development period and good extensibility and so on. The field test result indicates that the weighting error of the system is less than 0.2%.    

Key words: SOPC;Nios II softcore processor;FPGA;AD7730;dynamic weighing

1引 言

在化工、水泥、粮食、饲料等行业的生产过程中,需要对物料进行定量称重控制,完成自动称重包装。物料可以划分为颗粒、粉末、液体等类型。采用人工进行的定量称重包装不但效率低,而且计量精度低。全自动定量称重控制系统不但满足很高的计量精度,而且具有很强的稳定性,且具有精度高、功能强大、操作简便等特点。

随着嵌入式系统和微电子技术的发展,全自动定量称重控制系统的实现技术也在不断地发展。可编程片上系统(SOPC)是一种灵活高效的SOC设计方式,它根据系统设计的需要将CPU、存储器、I/O等各种IP核集成到一个可编程逻辑芯片(FPGA)上,构成一个可编程的片上系统。采用SOPC设计方式可以很容易对已有的设计进行修改,灵活性高[1]

本文设计的定量称重控制系统采用Altera公司的SOPC解决方案,它基于嵌入式软核Nios II多核结构, Nios II软核是一个32位RISC嵌入式处理器,性能超过200MIP,在性能上Nios II可满足当前的大部分嵌入式产品的设计。Altera公司提供了完整的开发套件:Quartus II 、SOPC Builder、Nios II IDE和仿真工具等软件,并将它们无缝地集成在一起,这为当前嵌入式系统设计提供了新方法,并带来了巨大的便利,可轻松实现从底层的硬件设计到上层的软件开发,缩短开发周期,降低开发的复杂性。

2 系统总体设计

本系统要求称重测量误差小于0.2%,且系统的功能比较复杂,既要实时处理采集过来的数据,还要实现控制、显示、存储以及与上位机通讯等功能,同时还要实现复杂的称重预测控制算法[2],一般在几秒中之内要完成物料的动态称重测量和包装,特别地,系统若要控制多路称重传感器的测量和包装,采用单CPU来控制的话,势必会影响到系统的速度,很难实现高精度的称重测量和控制需求。可以考虑采用多CPU系统来实现。传统的SOC多处理器系统使系统结构复杂,可靠性降低,且增加了系统的开发难度。

采用SOPC的实现方案,很好地解决了系统实现功能复杂性和系统设计复杂性的矛盾,Nios II 5.0及以上版本支持多处理器系统的创建和调试。多个Nios II处理器能够有效地共享系统资源,由于SOPC Builder允许用户轻松添加多个处理器到系统中,建立多处理器系统的难点已不再是硬件的排列和连接,而在于多个处理器的软件的设计,使它们正常操作,相互之间不产生冲突。

为防止多个处理器的相互干扰,在Nios II开发套件中包含一个硬件互斥核(mutex core)。这个硬件互斥核允许不同的处理器在某一时间段声明对共享资源的所有权。一个处理器对资源的临时所有权防止共享资源被其他处理器破坏。在Nios II IDE中,对多处理器系统的调试也比较容易[2]

采用多处理器系统实现的全自动称重控制系统,CPU功能划分如下:CPU1完成键盘参数输入、数据显示、打印、与上位机通讯等功能,CPU2,CPU3,…,CPUn分别完成每路的物料的动态称重测量和控制,具体包括数据采集、数据滤波,称重预测控制算法软件或硬件实现以及自动包装控制等功能。图1给出了包含2个Nios II CPU 的系统硬件结构图。CPU各自运行独立的软件,之间通过片上存储器实现数据的共享。

图1  称重控制系统结构图

3 系统硬件设计与实现

本设计采用Altera 公司的新一代低成本FPGA —Cyclone II实现SOPC设计,系统硬件主要包括FPGA上的Nios II处理器系统和FPGA外的接口和外设两部分。Nios II处理器系统主要由基于Avalon Bus 的Nios II CPU1、串行接口、PIO、存储器控制器;Nios II CPU2、定时器、PIO控制器以及片上RAM、互斥核等IP组成。与FPGA相连的外设包括串行配置器件、Flash、SDRAM、键盘、LCD显示器、打印机、AD7330、料位、料门开关等,称重传感器与AD7330直接相连,通过定时器提供系统的定时时钟和定时中断请求信号;串口通过RS485总线与上位机通讯,实现多Nios II系统的上位机监控。通过PIO可实现对AD7330、料门开关、键盘、LCD显示器、打印机等外设的控制,存储器控制器分别与片外SDRAM和Flash连接,实现对存储器的访问。

本控制系统硬件设计与实现的步骤如下:

首先在SOPC Builder中,使用Altera公司提供的IP Core,对Nios II CPU和各外设模块的特性、参数大小及在系统中地址分配等进行设定;然后启动SOPC Builder中的Generate,使之生成用于综合和仿真的文件;最后,使用Quartus II软件锁定端口引脚,对生成的Nios II系统进行仿真、综合、适配、下载和FPGA 配置。这样即实现了如图1所示的SOPC硬件系统。

3.1 数据采集及其处理

数据采集及其处理由称重传感器、模数转换AD7730和CPU2完成,AD7730的数据采集电路如图2所示。图中,由桥式压力传感器输出电压信号进入到输入通道AIN+和AIN-,经过模数转换,再经过AD7730中的数字滤波器进行滤波,滤波后的数据通过SCLK、DIN、DOUT等信号通过中断的方式送给Nios II进行相应的处理,得到期望的精确数据。

图2   AD7730数据采集电路图

AD7730 是美国ADI 公司推出的一款高分辨率的A/D 转换器, 采用双通道全差分模拟输入,可直接和传感器输入信号相连,并可自校准和系统校准[3]。AD7730 特别适合用于宽动态范围内的低频信号A/D 转换, 具有优良的抗噪声性能。在称重控制器中使用AD7730 分别与称重传感器和CPU2直接接口。为了能够得到高精度的采集数据,CPU2要有很高的工作频率。CPU2的工作频率设为50MHz,专门负责数据采集及算法的处理。每隔10ms,CPU2从AD7730中读取A/D转换值, 然后进行数字滤波处理,得到期望的近似数据。

3.2 CPU功能的实现

CPU1主要完成显示、存储、打印和通讯等功能。这些功能由CPU1控制外围I/O设备来实现。称重开始前,先通过液晶显示屏和键盘进行人机界面交互,输入控制参数,系统称重开始后,CPU1通过共享存储器获取并显示CPU2检测的称重数据,CPU2把检测值和标定的参数值进行比较,根据比较的结果进行称重预测控制算法[4]的计算,根据计算结果输出控制信号进行称重控制。称重结束后可以由CPU1把本次称重以及累积称重的结果打印出来,同时把结果记录在Flash中。CPU1可同时控制几台甚至十几台称重控制器,且通过RS485与上位机通讯,实现定量称重控制系统的远程监控。

3.3 多路控制的实现

       要实现多路控制,只需在图1的基础上增加Nios II和相关IP核来实现,这对于FPGA 来说是很方便的。例如要实现2路控制,只需增加一个Nios II软核CPU3,添加和CPU2相同的定时器和PIO IP核,再增加相应的数据采集和控制电路就可以实现,注意多个处理器可共用片外的Flash和SDRAM,只要其容量足够大,也即不需要重新制作FPGA 控制电路板。CPU3负责该路数据的采集、滤波和称重控制算法的计算和控制量的输出,以此类推,可以用同样的方法设计3路、4路等等。这样我们就可以用一台控制系统去完成多路测量,实现一台控制系统控制多个包装系统,从而在不影响称重精度的基础上大幅度降低成本。

4 软件系统总体设计

4.1 软件总体设计

软件是基于Nios II 集成开发环境(IDE)[5] ,采用C语言开发完成的,CPU1主要是完成参数的输入、打印、显示和通信等功能,CPU1软件主要包括键盘管理与参数输入,状态测试,称量系统校正和与上位机通信等模块。为了节约系统功耗,在设定完系统参数后,LCD显示可关闭。在称量参数设置完成后,就可以启动自动称量。在自动称量完成后,可以显示静重值和扣重值。CPU2主要是完成数据采集和预估控制算法的计算及称重控制,数据采集采用中断方式,中断时间设置为10 ms。

4.2 去极值平均滤波算法

       称重测量的精度直接影响系统的定量包装控制的准确性,所以采集数据的精度对保证系统的精度至关重要。

工业现场环境恶劣,为了准确地进行称重数据的采集,必须对采集的数据进行滤波处理,滤掉干扰信号。在实际应用中采用了去极值平均滤波算法,既可以消除由系统外部环境偶然因素引起的突变性扰动造成的尖脉冲干扰,又能够使数据平滑。去极值平均滤波算法是一种比较典型的复合滤波算法,它是由中值滤波算法和滑动平均滤波算法复合而来。由于它具有简单实用的特点,所以得到广泛运用。

去极值平均滤波算法的原理是:建立一个固定长度为N的队列,对每一组新的采样值,先用中值滤波算法滤除采样值中的脉冲性干扰,即剔除M 个最大值和M个最小值(M<N/2);然后求出余下的N-2M个采样值的平均值,选取这个平均值为本次采样值。显然,这种方法既能抑制随机干扰,又能滤除明显的脉冲干扰。

5现场测试分析

       通过现场测试,得到对设定值为25kg 的大米进行称重包装的数据如表1所示。结果表明:系统误差小于0.2%。

表1 比较实际误差

 

第一袋

第二袋

第三袋

第四袋

第五袋

第六袋

给定值/㎏

25.000

25.000

25.000

25.000

25.000

25.000

测量值/㎏

25.000

24.999

25.001

25.000

24.999

25.001

误差/㎏

­­0.000

-0.001

0.001

0.000

0.000

0.001

6 结 论

现场测试结果表明,系统测量称重误差小于0.2%。

本文的创新点在于:基于SOPC的定量称重控制系统具有开发周期短、成本低、可靠性高、易于扩充等特点,其SOPC实现技术可广泛适用于各种测量与控制系统

参考文献:

[1]  Qingxu Deng , Hai Xu, Shuisheng Wei, An embedded SOPC system using automation design, Proceedings. 2005 International Conference on Parallel Processing Workshops, 2005, p 232-9

[2]  李兰英. Nios II 嵌入式软核 SOPC 设计原理及应用[M]. 北京:北京航空航天大学出版社, 2006.

[3]  刘书明. 高性能模数与数模转换器件[M]. 西安:西安电子科技大学出版社, 2000.

[4]  陈宝远,房国志,于晓阳.多级给料粉状物料称重系统的预测控制算法[J]. 电机与控制学报,2005,9(3): 287-290.

[5]  Altera Corp.QuartusII Version 6.0 Hardbook. Altera, 2006.

[6]  袁景超,宋广为. 连续称重给料系统称重精度的稳定提高[J].微计算机信息[J].2001,17(11),38-39

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

成都2022年10月19日 /美通社/ -- 近期,平安养老险积极筹备个人养老金的产品设计和系统开发工作,发展多样化的养老金融产品,推动商业养老保险、个人养老金、专属商业养老保险等产品供给。 搭养老政策东风 ...

关键字: 温度 BSP 东风 大众

广东佛山2022年10月19日 /美通社/ -- 空间是人居生活的基础单元,承载着生存与活动的最基本功能。而对于理想空间的解构意义却在物理性容器之外,体现出人们对于空间和生活深层关系的思考,同时也塑造着人与空间的新型连接...

关键字: 温度 BSP 智能化 进程

上海2022年10月19日 /美通社/ -- 10月17日晚间,安集科技披露业绩预告。今年前三季度,公司预计实现营业收入7.54亿元至8.33亿元,同比增长60.24%至77.03%;归母净利润预计为1.73亿...

关键字: 电子 安集科技 BSP EPS

北京2022年10月19日 /美通社/ -- 10月18日,北京市经济和信息化局发布2022年度第一批北京市市级企业技术中心创建名单的通知,诺诚健华正式获得"北京市企业技术中心"认定。 北京市企业技...

关键字: BSP ARMA COM 代码

北京2022年10月18日 /美通社/ -- 10月14日,国际数据公司(IDC)发布《2022Q2中国软件定义存储及超融合市场研究报告》,报告显示:2022年上半年浪潮超融合销售额同比增长59.4%,近5倍于...

关键字: IDC BSP 数字化 数据中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都银行集团成立60周年的纪念日。趁着首都银行集团成立60周年与首都银行(中国)在华深耕经营12年的“大日子”,围绕作为外资金融机构对在华战略的构想和业...

关键字: 数字化 BSP 供应链 控制

东京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式会社(NIPPON EXPRESS HOLDINGS, INC.)旗下集团公司上海通运国际物流有限公司(Nipp...

关键字: 温控 精密仪器 半导体制造 BSP

广州2022年10月18日 /美通社/ -- 10月15日,第 132 届中国进出口商品交易会("广交会")于"云端"开幕。本届广交会上高新技术企业云集,展出的智能产品超过140,...

关键字: 中国智造 BSP 手机 CAN

在这篇文章中,小编将对CPU中央处理器的相关内容和情况加以介绍以帮助大家增进对CPU中央处理器的了解程度,和小编一起来阅读以下内容吧。

关键字: CPU 中央处理器 晶圆

在桌面级处理器上,AMD多年来一直在多核上有优势,不过12代酷睿开始,Intel通过P、E核异构实现了反超,13代酷睿做到了24核32线程,核心数已经超过了锐龙7000的最大16核。在服务器处理器上,AMD优势更大,64...

关键字: AMD CPU Intel EUV

嵌入式软件

15715 篇文章

关注

发布文章

编辑精选

技术子站

关闭