CN104423349B - 一种基于can总线的振动试验控制方法 - Google Patents
一种基于can总线的振动试验控制方法 Download PDFInfo
- Publication number
- CN104423349B CN104423349B CN201310396318.1A CN201310396318A CN104423349B CN 104423349 B CN104423349 B CN 104423349B CN 201310396318 A CN201310396318 A CN 201310396318A CN 104423349 B CN104423349 B CN 104423349B
- Authority
- CN
- China
- Prior art keywords
- data
- host computer
- slave computer
- control
- slave
- 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.)
- Active
Links
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Testing And Monitoring For Control Systems (AREA)
- Selective Calling Equipment (AREA)
Abstract
本发明涉及一种基于CAN总线的振动试验控制方法,其特征在于:包括以下步骤:步骤一、采用多线程技术,为控制系统的界面管理、数据监测和通信控制分别开启单独的工作线程;步骤二、使用windows系统自带的定时功能,定时采集CAN总线控制器接收缓冲区的数据;步骤三、为每个下位机分配一个ID,使发送的每一帧数据都发送给固定ID的下位机;步骤四、对采集的数据进行存储,数据的存储采用线性链表的数据结构实现,将数据节点插入所述线性链表中并写到txt文档;步骤五、控制系统的上位机通过调用CAN总线控制器的动态链接库实现CAN格式数据的收发。本发明的方法,操作更加方便,工作效率更高,试验更加可靠。
Description
技术领域
本发明涉及振动试验技术领域,具体涉及一种基于CAN总线的振动试验控制方法。
背景技术
目前振动试验系统的操作主要是通过功率放大器的控制面板和振动控制仪的操作界面协调工作来实现。其中,冷却系统、励磁装置、增益放大等装置的启停和设置,试验参数如功放输出电压、电流等信息的显示都在功率放大器的控制面板上。这种操作形式具有诸多不便,操作人员要往返于功率放大器和振动控制仪之间,操作起来很不方便,而且近距离的操作也会对人体的健康或安全带来潜在的危害。
此外,对于多维振动系统,传统的操作方式更为不便。多维试验系统通常由两个或两个以上的振动台组成,实现两个或多个方向的振动;每个振动台都有一套独立的功率放大器。在振动试验中,多个放大器需单独控制和设置,比较繁琐。而且功率放大器的保护又是相对独立的。当其中一台发生故障时,其他的还在工作,会对系统和试件造成损伤。多功率放大器的联控技术是多维振动亟需解决的问题之一。
振动试验系统在试验过程中,各类运行参数都是分散显示的。这些参数只能通过人工读取的方式来获得,而且需要手工记录。记录这些参数有利于在以后的试验中对过程数据进行比对和分析,从而更好地把握试验情况。但是,由于试验数据的变化速率非常快,人工记录无法完全记录下全部试验数据,不利于试验数据的保存和查询。
发明内容
本发明的要解决的技术问题是提供一种操作更加方便,工作效率更高,试验更加可靠的基于CAN总线的振动试验控制方法。
为了解决上述技术问题,本发明的技术方案为,一种基于CAN总线的振动试验控制方法,其特征在于:包括以下步骤:
步骤一、多任务并行
采用多线程技术,为控制系统的界面管理、数据监测和通信控制分别开启单独的工作线程;
步骤二、数据实时采集
使用windows系统自带的定时功能,定时采集CAN总线控制器接收缓冲区的数据;
步骤三、数据定义
为每个下位机分配一个ID,使发送的每一帧数据都发送给固定ID的下位机;
步骤四、数据存储
对采集的数据进行存储,数据的存储采用线性链表的数据结构实现,将数据节点插入所述线性链表中并写到txt文档;
步骤五、数据传输
控制系统的上位机通过调用CAN总线控制器的动态链接库实现CAN格式数据的收发。
所述步骤四中线性链表这样实现的:在内存中,数据节点存储在一组任意的存储单元中,节点之间通过指针的指向来连接,每个节点包含指向前一个节点和后一个节点地址的指针,节点通过指针连接成线性链表。
所述步骤一中数据监测流程,包括以下步骤:
1)上位机向下位机发送传输数据的请求消息,下位机接收该请求消息并向上位机发送应答消息;
2)上位机接收到所述应答消息后向下位机发送确认消息;
3)下位机接收到所述确认消息后向上位机发送数据;
4)上位机接收到一帧数据后,在上位机界面上显示实时采集到的数据。
所述步骤一中通信控制流程,其包括以下步骤:
1)上位机向下位机发送控制命令的请求消息,下位机接收该请求消息并向上位机发送应答消息;
2)上位机接收到所述应答消息后向下位机发送确认消息;
3)下位机接收到所述确认消息后,所述下位机执行与控制命令相关的动作;
4)所述下位机执行完与控制命令相关的动作后,向上位机发送执行完毕消息;
5)上位机接收到一帧数据后,在上位机界面上显示控制命令完毕。
步骤三中,所述CAN总线的标准帧具有独立的4个字节ID可以使用,专门表示下位机的代号。
所述步骤三中,一个CAN总线的标准帧具有8个字节的数据传输能力;
对于数据监测流程,设定第1个字节的数据表示监测的数据类型,用其他的7个字节表示该数据类型的量;
对于通信控制流程,设定第1个字节表示控制的状态,第2个字节表示控制的目标;
对于增益设置,规定第1个字节表示增益设定的百分比。
本发明的有益效果:
本发明的方法,通过现场总线进行通信,可以将所有下位机的参数设置、监视和控制集中在一台上位机界面上统一协调处理,操作更加方便,工作效率更高,试验更加可靠。
具体实施方式
以下结合实施例对本发明做进一步描述。
一般来说,控制系统包括一个上位机和下位机,所述上位机和下位机通过现场总线进行通信。
本发明一种基于CAN总线的振动试验控制方法,包括以下步骤:
步骤一、多任务并行
在一套控制系统中,需要几种功能同时运行,比如界面管理,数据的监测以及控制命令的下达等。为了实现多种功能并行处理,采用了多线程技术,为控制系统界面管理、数据监测和通信控制分别开启单独的工作线程,使各分功能互不影响,并行处理;
步骤二、数据实时采集
使用windows系统自带的定时功能,其定时精度可以达到55ms。使用该功能,定时查询和采集CAN总线控制器接收缓冲区的数据状态;当接收到数据时,将接受的数据进行计算,转换成所需的监测量,显示在上位机界面上;
步骤三、数据定义
要实现多功放柜的监测和控制,就必须建立起现场总线的网络。为每个下位机分配一个ID,使发送的每一帧数据都发送给固定ID的下位机;CAN总线的标准帧具有独立的4个字节ID可以使用,专门表示下位机的代号;
一个CAN总线的标准帧具有8个字节的数据传输能力;对于数据监测流程,设定第1个字节的数据表示监测的数据类型,如功放的输出电流、电压的峰值和有效值、保护状态、功放模块母线电压等。然后,用其他的7个字节的位置表示该数据类型的量;
对于通信控制流程,设定第1个字节表示控制的状态,如开和关,第2个字节表示控制的目标,如冷却系统、励磁装置等等,对于增益设置等非开关量,则规定第1个字节表示增益设定的百分比。
步骤四、数据存储
数据的存储采用线性链表的数据结构实现,将数据节点插入所述线性链表中并写到txt文档,可以将数据存储到本地磁盘以便随时查看。在相同的算法下,采用不同的数据结构,能够明显的提高存储的效率,能够在很大程度上提高程序的性能。线性链表是一种物理存储单元上非连续、非顺序的存储结构。在内存中,数据节点存储在一组任意的存储单元中,而节点之间之所以能连接在一起,不是由于物理结构上的相邻关系,而是通过指针的指向来实现,每个节点包含指向前一个节点和后一个节点地址的指针,于是节点通过指针连接成一张线性链表;
步骤五、数据传输
监测和控制功能实现的关键是上位机与下位机的通信。上位机通过调用CAN总线控制器的动态链接库实现CAN格式数据的收发。在本发明中,上位机与下位机的通信是通过传递CAN总线的标准帧数据来实现的。传递的所有数据,包括功率放大器运行状态如电流、电压、保护状态以及控制命令等,都包含在标准帧中;
所述数据监测流程包括:
1、上位机向下位机发送传输数据的请求消息,下位机接收该请求消息并向上位机发送应答消息;
2、上位机接收到所述应答消息后向下位机发送确认消息;
3、下位机接收到所述确认消息后向上位机发送数据;
4、上位机的主控板卡接收到一帧数据后,在上位机界面上显示实时采集的数据;
所述通信控制流程包括:
1、上位机向下位机发送控制命令的请求消息,下位机接收该请求消息并向上位机发送应答消息;
2、上位机接收到所述应答消息后向下位机发送确认消息;
3、下位机接收到所述确认消息后,所述下位机执行与控制命令相关的动作;
4、所述下位机执行完与控制命令相关的动作后,向上位机发送执行完毕消息;
5、上位机的主控板卡接收到一帧数据后,在上位机界面上显示控制命令完毕。
Claims (2)
1.一种基于CAN总线的振动试验控制方法,其特征在于:包括以下步骤:
步骤一、多任务并行
采用多线程技术,为控制系统的界面管理、数据监测和通信控制分别开启单独的工作线程;
步骤二、数据实时采集
使用windows系统自带的定时功能,定时采集CAN总线控制器接收缓冲区的数据;
步骤三、数据定义
为每个下位机分配一个ID,使发送的每一帧数据都发送给固定ID的下位机;
步骤四、数据存储
对采集的数据进行存储,数据的存储采用线性链表的数据结构实现,将数据节点插入所述线性链表中并写到txt文档;
步骤五、数据传输
控制系统的上位机通过调用CAN总线控制器的动态链接库实现CAN格式数据的收发;
所述步骤四中线性链表这样实现的:在内存中,数据节点存储在一组任意的存储单元中,节点之间通过指针的指向来连接,每个节点包含指向前一个节点和后一个节点地址的指针,节点通过指针连接成线性链表;
所述步骤一中数据监测流程,包括以下步骤:
1)上位机向下位机发送传输数据的请求消息,下位机接收该请求消息并向上位机发送应答消息;
2)上位机接收到所述应答消息后向下位机发送确认消息;
3)下位机接收到所述确认消息后向上位机发送数据;
4)上位机接收到一帧数据后,在上位机界面上显示实时采集到的数据;
所述步骤一中通信控制流程,其包括以下步骤:
1)上位机向下位机发送控制命令的请求消息,下位机接收该请求消息并向上位机发送应答消息;
2)上位机接收到所述应答消息后向下位机发送确认消息;
3)下位机接收到所述确认消息后,所述下位机执行与控制命令相关的动作;
4)所述下位机执行完与控制命令相关的动作后,向上位机发送执行完毕消息;
5)上位机接收到一帧数据后,在上位机界面上显示控制命令完毕;
所述步骤三中,一个CAN总线的标准帧具有8个字节的数据传输能力;
对于数据监测流程,设定第1个字节的数据表示监测的数据类型,用其他的7个字节表示该数据类型的量;
对于通信控制流程,设定第1个字节表示控制的状态,第2个字节表示控制的目标;对于增益设置,规定第1个字节表示增益设定的百分比。
2.按照权利要求1中所述的基于CAN总线的振动试验控制方法,其特征在于:步骤三中,所述CAN总线的标准帧具有独立的4个字节ID可以使用,专门表示下位机的代号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310396318.1A CN104423349B (zh) | 2013-09-04 | 2013-09-04 | 一种基于can总线的振动试验控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310396318.1A CN104423349B (zh) | 2013-09-04 | 2013-09-04 | 一种基于can总线的振动试验控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104423349A CN104423349A (zh) | 2015-03-18 |
CN104423349B true CN104423349B (zh) | 2017-11-28 |
Family
ID=52972683
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310396318.1A Active CN104423349B (zh) | 2013-09-04 | 2013-09-04 | 一种基于can总线的振动试验控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104423349B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106404329A (zh) * | 2016-10-14 | 2017-02-15 | 北京航天斯达科技有限公司 | 一种多振动台连锁保护装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7133801B2 (en) * | 2002-06-07 | 2006-11-07 | Exxon Mobil Research And Engineering Company | System and methodology for vibration analysis and condition monitoring |
JP2009180687A (ja) * | 2008-01-31 | 2009-08-13 | Seiko Epson Corp | 振動モニタリング装置、振動モニタリングシステム、サーバおよび振動センサモジュール |
CN101751024A (zh) * | 2008-12-12 | 2010-06-23 | 北京航空航天大学 | 一种集散式环境参数的测控系统及方法 |
CN102628727A (zh) * | 2012-04-25 | 2012-08-08 | 上海交通大学 | 变压器振动监测系统 |
CN103063250A (zh) * | 2012-12-25 | 2013-04-24 | 苏州长菱测试技术有限公司 | 振动试验设备故障监测系统及方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201654535U (zh) * | 2009-12-31 | 2010-11-24 | 苏州东菱振动试验仪器有限公司 | 多综合环境振动试验系统的集中控制装置 |
CN202049027U (zh) * | 2011-01-21 | 2011-11-23 | 天津工业大学 | 基于LabVIEW的锭子振动测试试验装置 |
-
2013
- 2013-09-04 CN CN201310396318.1A patent/CN104423349B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7133801B2 (en) * | 2002-06-07 | 2006-11-07 | Exxon Mobil Research And Engineering Company | System and methodology for vibration analysis and condition monitoring |
JP2009180687A (ja) * | 2008-01-31 | 2009-08-13 | Seiko Epson Corp | 振動モニタリング装置、振動モニタリングシステム、サーバおよび振動センサモジュール |
CN101751024A (zh) * | 2008-12-12 | 2010-06-23 | 北京航空航天大学 | 一种集散式环境参数的测控系统及方法 |
CN102628727A (zh) * | 2012-04-25 | 2012-08-08 | 上海交通大学 | 变压器振动监测系统 |
CN103063250A (zh) * | 2012-12-25 | 2013-04-24 | 苏州长菱测试技术有限公司 | 振动试验设备故障监测系统及方法 |
Non-Patent Citations (2)
Title |
---|
基于windows CE的手持式振动检测仪软件开发;倪笑斐;《中国优秀博硕士学位论文全文数据库(硕士) 工程科技Ⅱ辑》;20061215(第12期);C030-137 * |
水轮机组振动监测系统的研究与设计;唐兵;《中国优秀硕士学位论文全文数据库 工程科技Ⅱ辑》;20080315(第3期);C037-23 * |
Also Published As
Publication number | Publication date |
---|---|
CN104423349A (zh) | 2015-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111611256B (zh) | 设备能耗监测方法、装置、终端设备及存储介质 | |
CN104062446B (zh) | 一种飞机结构健康监测集成系统及方法 | |
CN204257948U (zh) | 一种智能插座及智能插座系统 | |
CN103728518A (zh) | 变频器调试系统及方法 | |
CN107704904B (zh) | 一种燃气设备的管理系统及方法、一种移动终端 | |
CN110784398A (zh) | 一种工业物联网加工设备数据采集网关以及数据分析方法 | |
CN105182773A (zh) | 航空发动机试车用数据检测系统及方法 | |
US20100235789A1 (en) | Display control system and method | |
CN105721564A (zh) | 一种基于工业物联网的数据采集方法及其系统 | |
CN106201715A (zh) | 一种任务调度方法和装置 | |
CN105137928A (zh) | 一种全自动化生产线数据采集方法及其系统 | |
CN108132955A (zh) | 一种日志存储方法及装置 | |
CN201863869U (zh) | 基于mvb网络的列车仿真系统 | |
CN104423349B (zh) | 一种基于can总线的振动试验控制方法 | |
CN104320301A (zh) | 一种内网专线流量监控方法及系统 | |
CN109802843A (zh) | 一种基于snmp的网络设备监控系统 | |
CN208046653U (zh) | 一种电力监控系统网络安全监测主站平台系统 | |
KR20100026086A (ko) | 업무지시시스템 및 그 방법 | |
CN105022663A (zh) | 电力系统监测和控制系统 | |
CN104064982A (zh) | 一种智能变电站故障信息的多维展示方法 | |
CN111960208A (zh) | 一种电梯远程数据采集方法和系统 | |
CN111611255A (zh) | 设备能耗节能管理方法、装置、终端设备及存储介质 | |
CN205844801U (zh) | 一种数据采集器 | |
CN107480032A (zh) | 一种监控自助办税终端开机情况的方法 | |
CN107465569A (zh) | 一种SAS Switch整机柜抓取节点phy error count的方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |