西门子模块6ES7340-1CH02-0AE0型号规格
在数控机床出现以前,顺序控制技术在工业生产中已经得到广泛应用。许多机械设备的工作过程都需要遵循一定的步骤或顺序。顺序控制即是以机械设备的运行状态和时间为依据,使其按预先规定好的动作次序顺序地进行工作的一种控制方式。
数控机床所用的顺序控制装置(或系统)主要有两种,一种是传统的“继电器逻辑电路”,简称RLC(Relay LogicCircuit)。另一种是“可编程序控制器”,即PLC。
RLC是将继电器、接触器、按钮、开关等机电式控制器件用导线连接而成的以实现规定的顺序控制功能的电路。在实际应用中,RLC存在一些难以克服的缺点。如:只能解决开关量的简单逻辑运算,以及定时、计数等有限几种功能控制,难以实现复杂的逻辑运算、算术运算、数据处理,以及数控机床所需要的许多特殊控制功能,修改控制逻辑需要增减控制元器件和重新布线,安装和调整周期长,工作量大;继电器、接触器等器件体积较大,每个器件工作触点有限。当机床受控对象较多,或控制动作顺序较复杂时,需要采用大量的器件,整个RLC体积庞大,功耗高,可靠性差等。由于RLC存在上述缺点,只能用于一般的工业设备和数控车床、数控钻床、数控镗床等控制逻辑较为简单的数控机床。
与RLC比较,PLC是一种工作原理完全不同的顺序控制装置。PLC具有如下基本功能:
1)PLC是由计算机简化而来的。为适应顺序控制的要求,PLC省去了计算机的一些数字运算功能,而强化了逻辑运算控制功能,是一种功能介于继电器控制和计算机控制之间的自动控制装置。
PLC具有与计算机类似的一些功能器件和单元,它们包括:CPU、用于存储系统控制程序和用户程序的存储器、与外部设备进行数据通信的接口及工作电源等。为与外部机器和过程实现信号传送,PLC还具有输入、输出信号接口。PLC有了这些功能器件和单元,即可用于完成各种指定的控制任务。PLC系统的基本功能结构框图如图1所示。
图1 PLC系统的基本功能结构
2)具有面向用户的指令和专用于存储用户程序的存储器。用户控制逻辑用软件实现。适用于控制对象动作复杂,控制逻辑需要灵活变更的场合。
3)用户程序多采用图形符号和逻辑顺序关系与继电器电路十分近似的“梯形图”编辑。梯形图形象直观,工作原理易于理解和掌握。
4)PLC可与专用编程机、编程器、个人计算机等设备联接,可以很方便地实现程序的显示、编辑、诊断、存储和传送等操作。
5)PLC没有继电器那种接触不良、触点熔焊、磨损和线圈烧断等故障。运行中无振动、无噪音,且具有较强的抗干扰能力,可以在环境较差(如:粉尘、高温、潮湿等)的条件下稳定、可靠地工作。
6)PLC结构紧凑、体积小、容易装入机床内部或电气箱内,便于实现数控机床的机电一体化。
PLC的开发利用,为数控机床提供了一种新型的顺序控制装置,并很快在实际应用中显示了强大的生命力。现在PLC已成为数控机床的一种基本的控制装置。与RLC比较,采用PLC的数控机床结构更紧凑,功能更丰富,工作更可靠。对于车削中心、加工中心、FMC、FMS等机械运动复杂,自动化程度高的加工设备和生产制造系统,PLC则是不可缺少的控制装置。
4.1.组态软件CAN驱动特定
图4.1 组态软件CAN驱动
组态软件的CAN驱动程序,如图4.1所示,是人机界面和组态软件的接口,其功能和特点是:
CAN总线数据传递给组态软件的接口:
驱动要借助系统的设备驱动接口,读取CAN总线数据,并通过组态软件的标准形式,传递给组态软件的实时数据库。
可以通过多种形式保证数据发送和接收成功:
1)、驱动内部,判断CAN控制器发送错误信息;
2)、通过写入设备寄存器,读取判断寄存器写是否成功。
关注CANopen协议操作应用层面:
驱动程序中,并不需要整合CANopen整个协议栈,支持CAN2.0协议就足够。CANopen协议部分通过组态逻辑解决。
可以通过多种形式保障数据的完整性和实时性:
实时性就是新发送总线数据,能够在规定的延时内,进入组态软件的实时数据库。完整性就是能够将所有的数据报文抓取到组态软件,并进行完整的数据处理和存储。根据控制工艺的要求,我们可以设置总线数据上发的频率,通过HMI嵌入的CAN控制器设置屏蔽减少非目标数据,也可以通过组态软件对CAN控制器和驱动缓冲区的处理数据收发性能。
4.2.HMIBuilder软件CAN驱动映射关系
4.2.1.HMIBuilder组态软件
HMIBuilder组态软件是北京昆仑纵横科技发展有限公司(Http://www.hmibuilder.com)推出的分布式组态软件。现场总线是HMIBuilder软件关注的重点之一。
4.2.2.HMIBuilder设备站参数对应PCI1680U的一个Port口
针对研华PCI-1680U板卡,在设备站参数设置中,其端口、设备号可以选择(见图4.2),波特率可以设定,比如Port1,设备号为0,波特率:250K。这些对应AdvantechDeviceMagnager中的HardwareSetting(见图4.3)。其协议类型和远程帧方式对应CanMEx.exe测试程序中对CAN卡的设置(详见图4.4),其中CanMEx.exe在安装研华Demo后目录中,如C:\ProgramFiles\Advantech\CAN\CAN Examples\Examples\VC\CanMEx)。
图4.2 站参数选择
图4.3 HardwareSetting
图4.4 CanMEx
4.2.3.HMIBuilder模拟量CANopen帧的数据域
在图4.5中,其中Message内容为数据域的ASCII码形式解码。在HMIBuilder中,PCI1680U对应的点参数的设置方法如图4.5。其中,ID可以CANopen设备的PDO。如果要读PDO数据域的个Byte数据。那么设置如下:416:0:U8:R。也就是416表示设备ID,0表示偏移量,U8-表示8位无符号整形。也就是说,起始偏移为数据域按照字节的偏移,取值为0到7。如果按照F32数据类型,起始偏移取值为0和1。
图4.5 点参数的设置
注意:本驱动的解码方法包括8位无符号数据、8位带符号整数、16位无符号整数、带符号整数、16位BCD整数、32位无符号整数、32位带符号整数、32位BCD整数、32位浮点数。
5.应用实例下面,我们针对芬兰Axiomatic公司MVINC-CO-x-range型号倾角传感器,实现CANopen模块的人机界面接入。
1、物理连接
准备正确接线,连接研华的PCI-1680U板卡;用研华的随机测试软件进行测试。如果测试通讯完成后,再进行下一步,连接带CAN通讯的下一级设备,在这里我们测试Axiomatic公司MVINC-CO-x-range型号倾角传感器。
2、倾角传感器分析
通过阅读传感器的技术说明文档,我们的目标是通过组态软件可以控制倾角传感器的启动和停止,采集传感器的倾角信息。模块的启动和停止可以通过NMT指令实现。模块的倾角信息通过TPDO1数据对象周期上传。我们也知道通过SDO,可以配置对象字典,通过层设置服务(LSS:Layersettingservice)可以设置模块的Node-ID和波特率等,这些不是本文的目标,也就是,这些不是操作应用层面关注的,而是系统设置层面关注的。
3、HMIBuilder站参数组态
设置一个站,选择驱动程序。如下:
图5.1 站参数设置
配置协议,参数设置如下:
用PCI-1680U板卡的个端口接收数据,在设备中选择Port1,设备号选择个设备,波特率选择250k(和传感器波特率相同),屏蔽码为255。
图5.2 通信设置
4、倾角传感器的NMT对象组态
表5.1 [3] 网络管理对象(NMT)数据报文格式
CAN-ID如果为0X00,表示总线上所有节点都执行相关命令操作。
命令分类为:
表5.2 [3] CAN模块命令
在HMIBuilder数据组态中,我们设置启动CAN模块2个模拟量参数如图,要求ID都为0,偏移地址连续,而其分别为0和1。
图5.3 模拟量参数设置
注意:
地址为0,偏移量为0
图5.4 地址无偏移
地址为0,偏移量为1.
图5.5 地址偏移一位
5、倾角传感器TPDO1对象组态
通过倾角传感器相关技术文档,我们可以察看设备定义的数据对象字典,确定数据报文的数据域的内容。比如TPDO1,对于MVINC-CO-2-180模块,CAN数据报文发送7个字节数据,数据的定义为:
Sub1为纬度角(Latitude angle),16Bits;
Sub2为经度角(Longitude angle),16Bits;
Sub3为温度(temperature),8Bits;
Sub4为辅助输入(Auxiliary bbbbb),16Bits;
表5.3 [3]MVINC-CO-2-180模块的TPDO1对象的数据字典内容
倾角传感器上传数据的格式:
表5.4 TPDO1对象的数据报文
如果我们读取CAN模块7个模拟量参数,需要在组态软件中做如下设置:
图5.6 模拟量参数设置
地址设置如下:
图5.7 采集上来的数据
图5.7 地址设置 偏移0.对应D0:416:0:U8:R
图5.8地址设置 偏移1对应D1:416:1:U8:R
注意:
读上的数据为7位,ID不变。设置偏移为0…6
6、HMIBuilder组态完成
配置启动画面
图5.9 启动画面
运行情况:
图5.10 运行结
果
6.结束语通过HMIBuilder组态软件的CAN总线通信设置,实现了对倾角传感器数据的采集。我们可以看到:HMI系统中,我们主要关注CANopen协议的数据对象PDO部分,其他数据对象也可以根据现场工艺的要求在组态软件中实现。