您的位置 首页 元件

根据PIC18F258单片机的ANopen协议监控面板规划

虚拟仪器是电子测量技术与计算机技术深层次结合的产物,通过软、硬件的结合来实现传统仪器的各种功能,大大突破了传统仪器在数据处理、…

  虚拟仪器是电子丈量技能与计算机技能深层次结合的产品,通过软、硬件的结合来完结传统仪器的各种功用,大大突破了传统仪器在数据处理、显现、传送、存储等方面的约束,运用户能够便利地对仪器进行维护、扩展和晋级。用户通过友爱的图形界面来操作虚拟仪器的面板就好像操作实在仪器相同便利。CAN协议只界说了物理层和数据链路层,自身并不完好,有些杂乱的运用问题需求一个更高层次的协议——运用层协议来完结。CANopen协议便是将CAN网络中通讯数据的组成和传输进行规范化,并给用户很大的自由度,答运用户随时增加自己所需求的新功用。

  本文将虚拟仪器技能运用于CANopen协议开发,有利于完结分布式工业现场的实时监控、数据并重,改进现场总线网络通讯体系的运转功率,进步实时性和信息处理才干。

  1 CANopen协议概述

  CANopen协议是由CiA协会针对CAN协议的不完好性而界说出来的一个更高层次的协议——运用层协议。不同CANopen设备间的通讯都是通过交流通讯目标完结的。

  1.1 通讯目标

  通过CAN网络传输的CANopen通讯目标能够通过服务和协议来描绘。分类为:实时数据通过进程数据目标(PDO)协议传输;服务数据目标(SDO)协议用来对目标字典进行读写操作;特别功用目标协议供给了特定运用,网络同步,时刻戳和紧迫报文传输;网络办理(NMT)协议供给了网络初始化,过错操控和设备状况操控服务;层设置服务(LSS)协议用来装备CAN总线通讯参数和设备参数。

  1.2 CANopen预界说衔接集

  为了削减简略网络的组态工作量,CANopen界说了强制性的缺省标识符(CAN-ID)分配表。这些标识符在预操作状况下可用,通过动态分配还可修正他们。CANopen设备有必要向它所支撑的通讯目标供给相应的标识符。缺省ID分配表是依据11位的CAN-ID,包含一个4位的功用码(Function Code)部分和一个7位的节点ID(Node-ID)部分。

  Node-ID由体系集成商界说,规模是1~127(0不答应运用)。预界说的衔接集界说了4个接纳PDO(Receive-PDO),4个发送PDO(Transmit-PDO),1个SDO(占用2个CAN-ID),1个紧迫目标和1个节点过错操控ID。也支撑不需结语的NMT-Module-Control服务,SYNC和Time Stamp目标的播送。标识符的默认值如表1,表2所示。

  

  2 CANopen监控面板工控现场运用结构

  选用虚拟仪器软件LabVIEW进行CANopen协议监控面板的开发,完结CANopen数据的接纳与发送,完结分布式工控现场总线网络的数据监测。LabVIEW是NI公司开发的虚拟仪器运用程序编程环境,是一种图形化编程言语,特别合适开发测控运用软件,其具有一切通用编程环境的规范,如数据结构、循环结构和事情处理。其内置各种专业东西软件包可分量工程运用开发。运用暗示见图1,通过RS 232-CAN协议转化器实时监测现场总线上各节点的数据,完结操控使命。

  

  3 RS 232-CAN协议转化器

  虚拟仪器LabVIEW软件及PC机内部没有专门的CAN接口只要RS 232串行接口,因而运用单片机微操控器规划RS 232-CAN转化器,完结PC机接入现场总线网络,完结数据监听。在PC机上可用LabVIEW环境下的NI-VISA完结串口通讯。图2为RS 232-CAN协议转化器硬件原理图,选用内嵌CAN总线操控器的Microchip公司P%&&&&&%18F258单片机为中心处理芯片。

  

  ADuM1100高速数字隔离器支撑100 Mb/s数据传输速率并且能够选用3.0~5.5 V单电源供电,以一种新的更有用的传输数据的办法代替传统的光耦合器,然后维护了高电压和低电压电气环境之间的接口。MCP2551是一种可容错的高速CAN收发器,可作为CAN协议操控器和体系物理总线的接口。MAX232用于完结RS 232与TLL/CMOS的电平转化。RS 232接口用于衔接PC机。当单片机内部CAN总线操控器收到CAN总线上的信号后通过USART接口传给PC机的RS 232接口,相同PC机把数据通过RS 232接口发给单片机,再发送到CAN总线上。单片机担任完结通讯协议的转化,转化RS 232串口通讯数据与CAN通讯数据。

  4 虚拟仪器上位机监控面板开发

  LabVIEW程序开发首要包含三方面内容:CANopen监控面板主程序、数据发送模块和数据接纳模块。其间,数据接纳和发送模块作为子VI供监控面板主程序调用。

  4.1 CANopen主控面板程序规划

  主控面板的规划首要包含:CANopen报文的组成及打包发送,以及CANopen报文的接纳显现。

  4.1.1 CANopen报文打包

  依据CANopen协议标识符分配表及主从节点设置界说了各报文的ID号,如图3所示,通过LabVIEW分支结构完结报文类型的挑选,并依照CANopen协议数据帧格局要求界说了发送的数据内容,包含凹凸8位ID、数据长度、长途帧标志以及8 B数据,通过绑缚送入CANWrite.vi子模块发送到VISA接口。

  

  4.1.2 CANopen报文解析

  CANopen报文的解析是完结CANopen协议监控面板的要点,完结进程为:将从VISA接口接纳的数据依照CANopen报文格局进行组成;判别接纳的报文是长途帧仍是数据帧;将接纳的数据帧累积;对累积的数据帧顺次进行格局转化,完结数据显现(见图4)。

  

  4.2 数据发送/接纳模块程序规划

  数据发送模块CANwrite.vi运用VISA Write节点予以完结,并将该发送模块作为子VI调用。在LabVIEW渠道操控的串行通讯进程中,数据格局是以字符串的格局组成的,字符串中的每个字符实际上对应我们了解的ASCII字符,即计算机能够辨认的数据代码是ASCII代码,所以在传送到串口发送数据之前要通过代码转化,这就意味着以十进制、二进制、十六进制一共的数据有必要转化为ASCII字符串才干进行传送和接纳。数据发送模块如图5所示,其间,以0xAA作为握手信号

  

  数据接纳模块CANRead.vi运用VISA Read节点读取数据,如图6所示,从缓冲器接纳到的数据是ASCII字符串,通过ASCII字符串转化为十六进制字节数组的模块处理后,终究得到正确的数据。

  4.3 监控面板

  运用虚拟仪器LabVIEW开发的监控面板如图7所示。能够看到,左边为数据发送部分,首要设置NodeID,挑选主从节点类型,依据用户需求挑选待发送的报文类型,并设置帧类型(数据帧/长途帧)以及详细的发送数据。右侧为数据接纳部分,显现从CAN总线上监听到的CANopen报文。

  

  5 结语

  本文将虚拟仪器技能与现场总线高层通讯协议CANopen相结合,完结了现场总线上位机监控面板的开发,为分布式网络操控体系供给了高效、全面的监控环境,不只处理了工业现场不同设备同步监控的问题,并且供给了较强的在线可控性。一起,使用LabVIEW供给的各类专业东西软件包,能够进一步对工业数据进行处理,完结波形显现、信号滤波和频谱剖析等功用。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/xinpin/yuanjian/265412.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部