CN106959643A - 一种基于fpga的高速气阀双复合控制的方法 - Google Patents
一种基于fpga的高速气阀双复合控制的方法 Download PDFInfo
- Publication number
- CN106959643A CN106959643A CN201710261768.8A CN201710261768A CN106959643A CN 106959643 A CN106959643 A CN 106959643A CN 201710261768 A CN201710261768 A CN 201710261768A CN 106959643 A CN106959643 A CN 106959643A
- Authority
- CN
- China
- Prior art keywords
- air valve
- low
- signal
- voltage
- control signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0423—Input/output
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F16—ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
- F16K—VALVES; TAPS; COCKS; ACTUATING-FLOATS; DEVICES FOR VENTING OR AERATING
- F16K31/00—Actuating devices; Operating means; Releasing devices
- F16K31/02—Actuating devices; Operating means; Releasing devices electric; magnetic
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/25—Pc structure of the system
- G05B2219/25257—Microcontroller
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Control Of Fluid Pressure (AREA)
- Flow Control (AREA)
Abstract
本发明公开了一种基于FPGA的高速气阀双复合控制的方法,该方法通过接收双路RS485信号复合产生64路气阀控制高压及低压信号。使用相互独立的组合逻辑和状态机接收双路RS485气阀控制信号,使双路RS485信号互相独立互不影响。并将独立的双路RS485气阀控制信号进行实时合成,复合成最终的64路气阀控制信号。基于FPGA的高速气阀双复合控制的方法,系统频率可达100m,气阀喷气时间精度可达1ms,可同时精确控制64路高速气阀,大大提高了粮食分选机分分选效率与分选精度。
Description
技术领域
本发明涉及工业粮食分选机领域,特指是粮食分选机中高速气阀的双复合控制方法。具体是一种基于FPGA的高速气阀双复合控制的方法。
背景技术
在工业粮食分选机领域,进行分选操作时,执行分选动作的方式通常有两种。一种为通过机械结构执行分选动作,另一种为使用高压气阀执行分选动作。其中,使用高压气阀由于结构简单,成本低,便于控制,因此在实际应用中被广泛使用。在现实应用中,对高压气阀的控制直接影响着粮食分选系统对粮食分选的速度和精度。在现有的技术中,工业粮食分选机中控制气阀进行分选操作的方法通常是基于单片机或者ARM为核心,同过软件算法的方式实现,由于受到控制器的工作模式及速度的限制,因此在速度和精度上都有一定的上限。
发明内容
本发明针对现有技术的不足,提出一种基于FPGA的高速气阀双复合控制的方法,通过接收双路RS485信号复合产生64路气阀控制信号。
一种基于FPGA的高速气阀双复合控制的方法,该方法具体包括以下步骤:
步骤一:首先通过两个独立的串口接收模块分别接收双路RS485气阀控制信号,双路信号可以同时到达,也可不同时到达。
每路气阀控制信号为14个字节组成的一个控制帧,其中帧头为一个字节,接下来的8个字节,共64位代表气阀的控制信号,0到63位若对应位上的值为1则代表打开该路气阀,值为0代表关闭该路气阀。之后两分字节代表低压信号持续时间,分别为低压信号持续时间高八位,低压信号持续时间低八位。之后两个字节为校验位,最后一个字节为帧尾,代表一个控制帧的结束。
步骤二:定义64位气阀控制信号寄存器qifa_1z,0到63位对应位若为1则代表改路气阀打开,0代表该路气阀关闭;定义16位低压信号延时寄存器delay_1z,寄存低压信号持续时间T1;当接收完成信号Rxd_1_done到来时,将气阀控制帧对应信息置入上述两个寄存器;
步骤三:定义第一通道的基准时间计数器cnt_1_bt,基准时间计数器cnt_1_bt为0到Tt循环计数,若系统时钟是F,单位为MHz,则基准时间计数器cnt_1_bt为Tt/F循环计数。此时间Tt/F为低压信号时间精度;其中Tt为自定义的一个数值;
步骤四:定义计数器cnt_delay_1z来产生第一通道低压信号,当Rxd_1_done信号到来时将计数器cnt_delay_1z清零。当基准时间计数器cnt_1_bt记到Tt-1且计数器cnt_delay_1z的数值小于等于delay_1z的数值时,计数器cnt_delay_1z向上计数,否则保持原值。当计数器cnt_delay_1z大于0且小于delay_1z值时第一通道的低压控制信号为1,否则为0。
步骤五:产生第二通道的低压控制信号
产生第二通道的低压控制信号与产生第一通道的低压控制信号方法完全相同,即重复步骤二-步骤四;
步骤六:将第一通道的低压控制信号与第二通道的低压控制信号相或得到最终复合的低压控制信号;
步骤七:高压控制信号由状态机产生,定义两个状态分别为空闲态idle以及计数态cnt;用复合低压信号的上升沿作为空闲态idle向计数态cnt跳转的信号;进入计数态cnt后计数器cnt_h开始计数,当该计数器记满Tc后将其清空,并将状态回到空闲态idle,若系统时钟是F,单位为MHz,则计数时间是T3=Tc/F,单位为s;Tc为自定义的一个数值;
步骤八:当计数器cnt_h大于0且小于Tc时,高压控制信号为1,否则为0;
步骤九:若需打开一路的气阀,则只需将控制该路气阀打开的高压以及低压信号置入该路气阀对应的控制管脚;依次判断双通道0至63位气阀控制信号寄存器qifa_1z,qifa_2z,若双路中至少有一路为1,则将复合低压信号以及高压信号置入对应该路气阀控制信号管脚;否则在对应的控制管脚输出初始电平0。这样就可以对64路气阀进行精确控制。
与现有的技术相比,本发明的有益效果是:同时接收双路RS485信号做为高速气阀控制信号,可用于更为复杂的控制系统。基于FPGA的高速气阀双复合控制的方法,系统频率可达100m,气阀喷气时间精度可达1ms,可同时精确控制64路高速气阀,大大提高了粮食分选机分分选效率与分选精度。
附图说明
图1为该方法硬件结构示意图;
图2为气阀控制信号时序图。
具体实施方式
如图1所示,由两个独立的串口接收模块:串口接收模块1、串口接收模块2,分别接收两路RS485气阀控制帧信号;串口接收模块1接收完成后,将接收到的64路气阀开关信息及第一通道低压12v信号持续时间信息传给第一通道低压12v信号产生组合逻辑以产生第一通道低压12v信号;第一通道低压12v信号产生组合逻辑产生第一通道低压12v信号后把第一通道低压12v信号传给双路低压12v信号复合模块,并把第一通道的64路气阀开关信息传给64路气阀信号选择器;同理,串口接收模块2接收完成后,将接收到的64路气阀开关信息及第二通道低压12v信号持续时间信息传给第二通道低压12v信号产生组合逻辑以产生第二通道低压12v信号;第二通道低压12v信号产生组合逻辑产生第二通道低压12v信号后把第二通道低压12v信号传给双路低压12v信号复合模块,并把第二通道的64路气阀开关信息传给64路气阀信号选择器。双路低压12v信号复合模块,在接收到双路低压12v信号后通过复合双路低压12v信号产生复合的12v低压信号,并将复合的12v低压信号传给高压110v信号产生状态机以及64路气阀信号选择器;高压110v信号产生状态机根据复合的12v低压信号的上升沿产生高压110v信号并将高压110v信号传给64路气阀信号选择器;64路气阀信号选择器根据接收的双路64路气阀开关信息以及复合的12v低压信号和高压110v信号产生64路气阀高压和低压控制信号。
复合的12v低压信号和高压110v信号产生的具体时序如图2所示:第一通道串口接收完成信号Rxd_1_done到来时产生第一通道的12v低压信号(s_1_12v)持续时间为T1;第二通道串口接收完成信号Rxd_2_done到来时产生第二通道的12v低压信号(s_2_12v)持续时间为T2;第一通道的12v低压信号与上第二通道的12v低压信号得到复合的12v低压信号(s_12v);通过复合的12v低压信号产生110v高压信号(s_110v),持续时间为T3。
产生复合的64路气阀高压110v和低压12v控制信号的具体步骤如下:
步骤一:首先通过两个独立的串口接收模块分别接收双路RS485气阀控制信号,双路信号可以同时到达,也可不同时到达。
每路气阀控制信号为14个字节组成的一个控制帧,其中帧头为一个字节,接下来的8个字节,共64位代表气阀的控制信号,0到63位若对应位上的值为1则代表打开该路气阀,值为0代表关闭该路气阀。之后两分字节代表低压信号持续时间,分别为低压信号持续时间高八位,低压信号持续时间低八位。之后两个字节为校验位,最后一个字节为帧尾,代表一个控制帧的结束。
步骤二:定义64位气阀控制信号寄存器qifa_1z,0到63位对应位若为1则代表改路气阀打开,0代表该路气阀关闭;定义16位低压信号延时寄存器delay_1z,寄存低压信号持续时间T1;当接收完成信号Rxd_1_done到来时,将气阀控制帧对应信息置入上述两个寄存器;
步骤三:定义第一通道的基准时间计数器cnt_1_bt,基准时间计数器cnt_1_bt为0到Tt循环计数,若系统时钟是F,单位为MHz,则基准时间计数器cnt_1_bt为Tt/F循环计数。此时间Tt/F为低压信号时间精度;其中Tt为自定义的一个数值;
步骤四:定义计数器cnt_delay_1z来产生第一通道低压信号,当Rxd_1_done信号到来时将计数器cnt_delay_1z清零。当基准时间计数器cnt_1_bt记到Tt-1且计数器cnt_delay_1z的数值小于等于delay_1z的数值时,计数器cnt_delay_1z向上计数,否则保持原值。当计数器cnt_delay_1z大于0且小于delay_1z值时第一通道的低压控制信号为1,否则为0。
步骤五:产生第二通道的低压控制信号
产生第二通道的低压控制信号与产生第一通道的低压控制信号方法完全相同,即重复步骤二-步骤四;
步骤六:将第一通道的低压控制信号与第二通道的低压控制信号相或得到最终复合的低压控制信号;
步骤七:高压控制信号由状态机产生,定义两个状态分别为空闲态idle以及计数态cnt;用复合低压信号的上升沿作为空闲态idle向计数态cnt跳转的信号;进入计数态cnt后计数器cnt_h开始计数,当该计数器记满Tc后将其清空,并将状态回到空闲态idle,若系统时钟是F,单位为MHz,则计数时间是T3=Tc/F,单位为s;Tc为自定义的一个数值;
步骤八:当计数器cnt_h大于0且小于Tc时,高压控制信号为1,否则为0;
步骤九:若需打开一路的气阀,则只需将控制该路气阀打开的高压以及低压信号置入该路气阀对应的控制管脚;依次判断双通道0至63位气阀控制信号寄存器qifa_1z,qifa_2z,若双路中至少有一路为1,则将复合低压信号以及高压信号置入对应该路气阀控制信号管脚;否则在对应的控制管脚输出初始电平0。这样就可以对64路气阀进行精确控制。
Claims (1)
1.一种基于FPGA的高速气阀双复合控制的方法,其特征在于:该方法具体包括以下步骤:
步骤一:首先通过两个独立的串口接收模块分别接收双路RS485气阀控制信号;
每路气阀控制信号为14个字节组成的一个控制帧,其中帧头为一个字节,接下来的8个字节,共64位代表气阀的控制信号,0到63位若对应位上的值为1则代表打开该路气阀,值为0代表关闭该路气阀;之后两分字节代表低压信号持续时间,分别为低压信号持续时间高八位,低压信号持续时间低八位;之后两个字节为校验位,最后一个字节为帧尾,代表一个控制帧的结束;
步骤二:定义64位气阀控制信号寄存器qifa_1z,0到63位对应位若为1则代表改路气阀打开,0代表该路气阀关闭;定义16位低压信号延时寄存器delay_1z,寄存低压信号持续时间T1;当接收完成信号Rxd_1_done到来时,将气阀控制帧对应信息置入上述两个寄存器;
步骤三:定义第一通道的基准时间计数器cnt_1_bt,基准时间计数器cnt_1_bt为0到Tt循环计数,若系统时钟是F,单位为MHz,则基准时间计数器cnt_1_bt为Tt/F循环计数;此时间Tt/F为低压信号时间精度;其中Tt为自定义的一个数值;
步骤四:定义计数器cnt_delay_1z来产生第一通道低压信号,当Rxd_1_done信号到来时将计数器cnt_delay_1z清零;当基准时间计数器cnt_1_bt记到Tt-1且计数器cnt_delay_1z的数值小于等于delay_1z的数值时,计数器cnt_delay_1z向上计数,否则保持原值;当计数器cnt_delay_1z大于0且小于delay_1z值时第一通道的低压控制信号为1,否则为0;
步骤五:产生第二通道的低压控制信号
产生第二通道的低压控制信号与产生第一通道的低压控制信号方法完全相同,即重复步骤二-步骤四;
步骤六:将第一通道的低压控制信号与第二通道的低压控制信号相或得到最终复合的低压控制信号;
步骤七:高压控制信号由状态机产生,定义两个状态分别为空闲态idle以及计数态cnt;用复合低压信号的上升沿作为空闲态idle向计数态cnt跳转的信号;进入计数态cnt后计数器cnt_h开始计数,当该计数器记满Tc后将其清空,并将状态回到空闲态idle,若系统时钟是F,单位为MHz,则计数时间是T3=Tc/F,单位为s;Tc为自定义的一个数值;
步骤八:当计数器cnt_h大于0且小于Tc时,高压控制信号为1,否则为0;
步骤九:若需打开一路的气阀,则只需将控制该路气阀打开的高压以及低压信号置入该路气阀对应的控制管脚;依次判断双通道0至63位气阀控制信号寄存器qifa_1z,qifa_2z,若双路中至少有一路为1,则将复合低压信号以及高压信号置入对应该路气阀控制信号管脚;否则在对应的控制管脚输出初始电平0;这样就可以对64路气阀进行精确控制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710261768.8A CN106959643B (zh) | 2017-04-20 | 2017-04-20 | 一种基于fpga的高速气阀双复合控制的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710261768.8A CN106959643B (zh) | 2017-04-20 | 2017-04-20 | 一种基于fpga的高速气阀双复合控制的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106959643A true CN106959643A (zh) | 2017-07-18 |
CN106959643B CN106959643B (zh) | 2019-05-14 |
Family
ID=59483539
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710261768.8A Active CN106959643B (zh) | 2017-04-20 | 2017-04-20 | 一种基于fpga的高速气阀双复合控制的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106959643B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1125860A (zh) * | 1994-12-30 | 1996-07-03 | 周春生 | 物料分选装置的电子脉冲信号控制系统 |
WO2000031448A1 (en) * | 1998-11-24 | 2000-06-02 | Spectra Research, Inc. | Shock wave generator including high speed gas valve |
CN201148483Y (zh) * | 2007-12-28 | 2008-11-12 | 陕西长岭软件开发有限公司 | 独立的棉花异纤清除气阀高速控制系统 |
CN103268092A (zh) * | 2013-04-27 | 2013-08-28 | 杭州师范大学 | 一种基于stm32与fpga的分布式圆机控制系统 |
CN103995488A (zh) * | 2014-05-28 | 2014-08-20 | 浙江理工大学 | 一种内衣机提花闭环控制系统及控制方法 |
US20150253746A1 (en) * | 2012-10-25 | 2015-09-10 | Buhler Sortex Ltd | Adaptive ejector valve array |
CN106180004A (zh) * | 2016-08-08 | 2016-12-07 | 深圳市华宇半导体有限公司 | 指纹分选机的控制系统及控制方法 |
-
2017
- 2017-04-20 CN CN201710261768.8A patent/CN106959643B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1125860A (zh) * | 1994-12-30 | 1996-07-03 | 周春生 | 物料分选装置的电子脉冲信号控制系统 |
WO2000031448A1 (en) * | 1998-11-24 | 2000-06-02 | Spectra Research, Inc. | Shock wave generator including high speed gas valve |
CN201148483Y (zh) * | 2007-12-28 | 2008-11-12 | 陕西长岭软件开发有限公司 | 独立的棉花异纤清除气阀高速控制系统 |
US20150253746A1 (en) * | 2012-10-25 | 2015-09-10 | Buhler Sortex Ltd | Adaptive ejector valve array |
CN103268092A (zh) * | 2013-04-27 | 2013-08-28 | 杭州师范大学 | 一种基于stm32与fpga的分布式圆机控制系统 |
CN103995488A (zh) * | 2014-05-28 | 2014-08-20 | 浙江理工大学 | 一种内衣机提花闭环控制系统及控制方法 |
CN106180004A (zh) * | 2016-08-08 | 2016-12-07 | 深圳市华宇半导体有限公司 | 指纹分选机的控制系统及控制方法 |
Non-Patent Citations (2)
Title |
---|
卜小帷,詹惠琴: "基于FPGA的半导体分立器件分选机控制系统设计", 《电子质量》 * |
盛楠: "光电分选机分选系统的设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Also Published As
Publication number | Publication date |
---|---|
CN106959643B (zh) | 2019-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100520976C (zh) | 以双向缓冲器来高速存取数据的存储器控制器及相关方法 | |
US8488623B2 (en) | Scalable interconnect modules with flexible channel bonding | |
CN101640525B (zh) | 一种具有极小传输延时的自动整形方法及电路 | |
CN1162153A (zh) | 用于自定时算法执行的装置和方法 | |
CN106959643A (zh) | 一种基于fpga的高速气阀双复合控制的方法 | |
CN109669903A (zh) | 一种srio协议的桥接模块设计及优化方法 | |
CN104750480B (zh) | 一种基于fpga的星上迭代图像处理方法 | |
CN201984777U (zh) | 一种led数码管驱动电路 | |
CN101303576A (zh) | 基于矩阵输出的新型脉冲控制仪 | |
CN207218713U (zh) | 一种时钟恢复电路 | |
CN102308538B (zh) | 报文处理方法及装置 | |
CN101262218A (zh) | 数据多路及顺/反向输出控制电路 | |
CN104657230A (zh) | 应用于单片机的定时器系统及其处理方法 | |
CN104121828B (zh) | 一种速缓变和冲击信号柔性采集方法 | |
CN107925410A (zh) | 用于可编程门阵列的逻辑块架构 | |
CN103514132B (zh) | 一种用于大数据量高速率通讯的数据优化方法 | |
CN102789190A (zh) | 适用于不同类型fpga电路编程的列地址分配器电路 | |
CN102201802A (zh) | 防毛刺时钟选择器的时序优化方法及其电路 | |
CN102799549A (zh) | 一种多源端口的数据处理方法及装置 | |
CN201211453Y (zh) | 基于矩阵输出的新型脉冲控制仪 | |
CN101101309A (zh) | 一种相位频率鉴别器 | |
CN203278775U (zh) | 一种可编程的非交叠时钟产生电路 | |
CN105574292A (zh) | 一种基于动态数组实现多通道任意带宽发包的方法 | |
CN101123586A (zh) | 光网络中采用fpga分流处理网络数据报文的方法 | |
CN104809085A (zh) | 基于avalon总线的自定义波形激励输出的控制器及其控制方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
EE01 | Entry into force of recordation of patent licensing contract | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20170718 Assignee: Hangzhou chuangsida Precision Technology Co.,Ltd. Assignor: HANGZHOU DIANZI University Contract record no.: X2021330000035 Denomination of invention: A double compound control method of high speed air valve based on FPGA Granted publication date: 20190514 License type: Common License Record date: 20210412 |