一种基于CAN总线的电气盒线路测试系统的设计

发表时间:2020/12/11   来源:《科学与技术》2020年第22期   作者:郭华伟 赵明
[导读] 该电气盒线线路测试系统,主要用于复杂逻辑电器盒类产品的性能的测试,本文着重讲述了电气盒线路测试系统的设计与测试原理,以及CAN总线通讯协议在系统中的应用。

        郭华伟 赵明
        石家庄海山实业发展总公司,河北 石家庄 050000
0 引言
        该电气盒线线路测试系统,主要用于复杂逻辑电器盒类产品的性能的测试,本文着重讲述了电气盒线路测试系统的设计与测试原理,以及CAN总线通讯协议在系统中的应用。
1 硬件组成
        系统的硬件主要有工业控制计算机、控制切换单元、测量单元三部分构成见表1。


表1硬件组成
2  系统总体原理框图

        由上位机发送控制命令,控制切换单元将被测试的信号线切至数据多用表的表笔两端。然后上位机再通过RS232接口将数据多用表切换到电压档测量,进行测量,测量完毕后由上位机将测量数据读出。
        2.3  二极管通断测量原理

        由上位机发送控制命令,控制切换单元将被测试的信号线切至时间测量单元。然后上位机接通被测产品电源,完后马上通知时间测量单元开始测量(附带超时时间、信号类型等信息),时间测量单元在检测到脉冲后,将测量值上传至上位机。
3  系统数据通讯
3.1  测试信号输入策略
系统分上位机和下位机两部分构成,上位机、下位机通过CAN总线连接,上位机负责测试命令的发送,测试结果的处理、显示等。下位机有1块母板,母板有8块子板。每块子板都可通过设置跳线设定其地址编码,8块子板的地址编码为(1--8)。每块子板负责测试16个通道,8块子板完成128个通道的测试,每通道4个继电器可完成16种状态的测试。在测试设备上有4个插座(编号分别为1#、2#、3#、4#),1号插头有55针,2号插头有42针,3号插头有32针,4号插头有26针,4个插头总共为155针(在本系统中只用到128针,其余的用于其他设备对被测设备的测试)。每个插头的针号从1#开始编号。这样在测试时测试通道和对应子板之间的计算关系为:
例:对2号插头的第20针进行测试,则
        55(1号插头的针数)+ 20(2号插头的针数)= 75
        75 整除16 = 4                 在第(4  +1)块子板
        75 –16 * 4 = 11                     在第11通道
插座编号(1# --- 4#):
        插座1:55针
        插座2:42针
        插座3:32针
        插座4:26针
3.2  通讯协议
    在本测试设备中,采用标准CAN V2.0协议。主从机通信采用具有11 位识别符的标准帧格式。双方通信以帧为单位,11位ID识别符作为从机地址使用。数据字段统一长度为8。数据域定义如下:
3.2.1 数据域结构
3.2.2 通信命令类型说明
0x11  ----    单个继电器动作命令 (要求应答)
            主机→从机;
Data1:继电器编号(1号~64号);
Data2:继电器状态数据,
0x00     ---- 释放
0x01     ---- 吸合
other    ---- 无效
            Data3 ~Data7:备用
0x22  ----     单通道设置命令 (要求应答)
            主机→从机;
Data1:通道编号(1~16,对应CH1~CH16);   
Data2:通道状态数据,
0x00     ---- 悬空
0x01     ---- GLD+27V
0x02    ---- GLDGND
0x03    ---- JY+    绝缘表正表笔
0x04    ---- JY-  绝缘表负表笔
            Data3 ~Data7:备用
0x33  ----     组继电器动作命令 (要求应答)
            主机→从机;
Data1:组号(1~2)
0x01     ---- 组1,继电器Num1 ~ Num32
0x02    ---- 组2,继电器Num33 ~ Num64
Data2:继电器1 ~8 (组1) 或 继电器33~40(组2)状态数据
Data3:继电器9 ~16(组1) 或 继电器41~48(组2)状态数据
Data4:继电器16~24(组1) 或 继电器49~56(组2)状态数据
Data5:继电器25~32(组1) 或 继电器57~64(组2)状态数据
说明:用数据字节中的1位表示对应继电器的状态,1 – 吸合,0 – 释放。
0x44  ----     组通道动作命令 (要求应答)
            主机→从机;
Data1:通道组号(1~2)
0x01     ---- 通道组1,通道CH1 ~ CH8
0x02    ---- 通道组2,通道CH9 ~ CH16
Data2:CH1、CH2通道状态
Data3:CH3、CH4通道状态
Data4:CH5、CH6通道状态
Data5:CH7、CH8通道状态
说明: 数据字段使用一字节表示两个通道的状态,低4位表示CHx通道状态,高4位表示CHx+1通道状态。
0000B     ---- 悬空
0001B     ---- GLD+27V
0010B    ---- GLDGND
0011B    ---- JY+    绝缘表正表笔
0100B    ---- JY-  绝缘表负表笔
0x55  ----     读编码数据命令 (要求应答)
            主机→从机;
            无数据
0x66  ----     板复位命令 (要求应答)
            主机→从机;
            无数据
0x77  ----     启动时间测试命令 (要求应答)
此命令只用于第8号板,即延时继电器延时时间测试板。
            主机→从机;
            Data1 ~Data4:超时时间数据。
            Dt = Data4*224 + Data3*65536 + Data2*256 + Data1;
            Data5    =1:无源触点测试 =2:被测端为28V  =3被测端为28地
Data6 ~Data7:备用。
0x88  ----     停止时间测试命令 (要求应答)
此命令只用于第8号板,即延时继电器延时时间测试板。
            主机→从机;
            无数据
0x01  ----   上传应答命令
            从机→主机;
Data1:应答类别
0x11 ~ 0x77    ---- 应答的命令类型
            Data2: 应答数据(signed  char型数据)
            0    ---- 正确
-1     ---- 错误命令码
-2    ---- 错误数据字段
            Data3 ~Data7:备用。
0x02  ----   上传延时时间数据命令
            从机→主机;
Data1:应答数据(signed  char型数据)
            0   ---- 正确
-3     ---- 超时未闭合。
            Data2 ~ Data5:延时时间数据。
            Dt = Data5*224 + Data4*65536 + Data3*256 + Data2;
        Data6 ~ Data7:备用。
4、系统的软件设计
软件的总体流程如图7所示,主界面如图8所示。

6 结束语
电气盒线线路测试系统,满足了复杂电气盒类产品的电气性能测量。由于系统采用了CAN总线,使系统具备了灵活的扩展性。该测试系统对开发类似系统具有一定的参考价值。

参考文献
     [1]模拟电子技术基础.第四版.高等教育出版社,2006
     [2] 单片机原理及其接口技术.清华大学出版社,2004






投稿 打印文章 转寄朋友 留言编辑 收藏文章
  期刊推荐
1/1
转寄给朋友
朋友的昵称:
朋友的邮件地址:
您的昵称:
您的邮件地址:
邮件主题:
推荐理由:

写信给编辑
标题:
内容:
您的昵称:
您的邮件地址: