FreeModbus学习笔记一、FreeModbus简介FreeMODBUS一个奥地利人写的Modbus协议。它是一个针对嵌入式应用的一个免费(自由)的通用MODBUS协议的移植。Modbus是一个工业制造环境中应用的一个通用协议。Modbus通信协议栈包括两层:Modbus应用层协议,该层定义了数据模式和功能;另外一层是网络层。FreeMODBUS提供了RTU/ASCII传输模式及TCP协议支持。FreeModbus遵循BSD许可证,这意味着用户可以将FreeModbus应用于商业环境中。目前版本FreeModbus-V1.5提供如下的功能支持:二、FreeModbus对硬件的需求FreeModbus 协议对硬件的需求非常少——基本上任何具有串行接口,并且有一些能够容纳modbus数据帧的RAM的微控制器都足够了。◆一个异步串行接口,能够支持接收缓冲区满和发送缓存区空中断。一个能够产生RTU传输所需要的t3.5字符超时定时器的时钟。对于软件部分,仅仅需要一个简单的事件队列。在使用操作系统的处理器上,可通过单独定义一个任务完成Modbus时间的查询。小点的微控制器往往不允许使用操作系统,在那种情况下,可以使用一个全局变量来实现该事件队列(AtmelAVR移植使用这种方式实现)。实际的存储器需求决定于所使用的Modbus模块的多少。下表列出了所支持的功能编译后所需要的存储器。ARM是使用GNUARM编译器3.4.4使用-01选项得到的。AVR项数值是使用WinAVR编译器3.4.5使用-Os选项编译得到的。
标签: freemodbus
上传时间: 2022-06-24
上传用户:
0引言对于一个程序员,如果要从头开始完全由自己来编写一个用于通信的应用程序,必须对相关的网络协议及其它的一些底层技术有较深入的了解,编程难度比较大。Visual Basic(VB)为广大程序员提供了基于WindowsSockets网络编程接口的Winsock控件,它封装了所有繁琐的技术细节,并提供了访问TCP和UDP网络服务的方便途径,只需通过设置控件的属性并调用其方法就可轻易连接到一台远程计算机中,并且还可以实现双向交换数据。因此,利用VB的Winsock 控件来编写基于TCP和UDP协议的通信程序,可以降低编程难度,简化应用程序。1TCP和UDP协议介绍TCP和UDP是TCP/IP协议中的两个传输层协议,它们使用IP路由功能把数据包发送到目的地,从而为应用程序及应用层协议提供网络服务。TCP(Transmission Control Protocol,传输控制协议)是面向连接的协议。“面向连接”就是在正式通信前必须要与对方建立起可靠的连接,这就好象平时的打电话,必须等线路接通了、对方拿起话筒才能相互通话。一个TCP连接必须要经过三次“对话“才能建立起来,其中的过程非常复杂。UDP(User Data Protocol,用户数据报协议)是与TCP相对应的协议,是面向非连接的协议。“面向非连接”就是在正式通信前不必与对方先建立连接,不考虑对方状态就直接发送数据,这就好象平时的发手机短信,不必考虑对方状态,只需要输入对方手机号就行。TCP提供的是面向连接的、可靠的数据流传输,而UDP提供的是面向非连接的、不可靠的数据流传输。面向连接的协议在任何数据传输前就建立好了点到点的连接,面向非连接的协议在数据传输之前不建立连接,而是在每个中间节点对面向非连接的包和数据包进行路由。
上传时间: 2022-06-24
上传用户:
MODBUS是OSI模型第7层上的应用层报文传输协议,它在连接至不同类型总线或网络的设备之间提供客户机/服务器通信。自从1979年出现工业串行链路的事实标准以来,MODBUS使成千上万的自动化设备能够通信。目前,继续增加对简单而雅观的MODBUS结构支持。互联网组织能够使TCP/IP栈上的保留系统端口502 访问MODBUS。MODBUS 是一个请求/应答协议,并且提供功能码规定的服务。MODBUS 功能码是MODBUS请求/应答PDU 的元素。本文件的作用是描述MODBUS 事务处理框架内使用的功能码。
标签: modbus
上传时间: 2022-06-24
上传用户:kent
电能信息采集与管理系统 第4-5部分:面向对象的互操作性数据交换协议本部分规定了电能信息采集与管理系统主站(以下简称“主站”)、采集设备、电能表之间,采用的面向对象具有互操作性的数据传输协议,包括通信架构、数据链路层、应用层、以及接口类及其对象和对象标识。本部分适用于主站、采集设备、电能表之间采用点对点、多点共线及一点对多点通信方式的通信数据交换。本部分适用于主站、采集设备、电能表之间采用点对点、多点共线及一点对多点通信方式的通信数据交换。
标签: 电能信息采集
上传时间: 2022-06-25
上传用户:
UDS诊断协议ISO14229,应用层协议,想了解UDS的同学可以看看
标签: UDS
上传时间: 2022-06-30
上传用户:
随着工业制造精度的不断提高,传统总线越来越多的表现出速度慢、数据量小的缺点。另一方面,一种将计算机网络应用于工业控制的总线技术越来越受到关注,这就是工业以太网。EtherCAT是一种基于修改以太网协议的工业以太网,在数据链路层使用ISO/IEC802.3协议,数据帧类型为特定类型;在网络层和传输层采用特定协议代替TCP/IP协议。目前,EtherCAT是速度最快、实时性最好的工业以太网协议之一。本文提出了基于UC/OSIⅡ的EtherCAT主站实现的具体方法。首先,从协议层面分析EtherCAT,对数据链路层、网络层和应用层协议进行分析。其次,通过对嵌入式平台的设计,确保主站系统的实时性。创造性的提出了一个UC/OSIⅡ系统下具有微秒级别精度的时间模块;同时设计了基于中断接收数据的DM9000的网卡驱动。最后,根据协议分层构架提出了一套嵌入式的EtherCAT主站软件ECOU(EtherCAT Over UC/OS),并对主站底层和软件进行了功能和性能测试。ECOU是一个实施于UC/OSIⅡ的EtherCAT主站。作为嵌入式EtherCAT主站,它的实施更加灵活;同时由于UC/OSIⅡ是实时操作系统,ECOU的性能也得到了很大的提高。关键词:工业以太网;UC/OSIⅡ;EtherCAT;微秒级别时间模块;主站
上传时间: 2022-06-30
上传用户:
随着汽车工业的发展,20世纪80年代中期,率先山Bosch公司研发出一代的汽车总线即控制器局域网(Controller Area Network,简称:CAN总线或CAN-bus),CAN总线具有布线而单、典型的总线型结构、可最大限度的节约布线与维护成本、稳定可靠、实时、抗干扰能力强、传输距离远等特点,这些都决定了CAN总线必定是一种成功的总线。一经推出不仅在汽车行业得到广泛的推广与应用,在诸如航天、电力、石化、冶金、纺织、造纸等领域也得到广泛应用,在日动化仪表、工业生产现场、数控机床等系统中也越来越多的使用了CAN总线,CAN总线在未米的发展中依然充满活力,有着巨大的发展空间。由于CAN总线本身只定义ISO/OS1模型中的第一层(物理层)和第二层(数据链路层),通常情况下CAN总线网络都是独立的网络,所以没有网络层。在实际使用中,用户还需要自己定义应用层的协议,因此在CAN总线的发展过程中出现了各冲版本的CAN应用层协议,现阶段最流行的CAN应用层协议主要有CANopen、DeviceNet和J1939等协议。本系列文章主要介绍CAN总线、基于CAN总线的应用层协议CANopen,以及CANopen设备的应用及组网方式。本文主要介绍CAN总线相关的概念及网络结构。
上传时间: 2022-07-18
上传用户:xsr1983
近年来,基于CAN应用层协议CANopen的现场总线网络在工业自动化中得到了广泛的关注和应用,特别是在分布式运动控制系统中具有良好的应用前景。本文主要研究、设计、实现基于DSPTMS320F2812的CANopen通讯协议。论文首先简单介绍了CANopen协议的应用背景和意义,描述了CANopen的网络模型,分析CAN总线网络的结构,构造了相关的主节点和从节点硬件平台。其次重点分析CANopen协议的模型结构及其设计过程,简要介绍了CANopen协议的设备模型、对象字典以及CANopen设备的各种状态的基本含义,在此基础上描述了CANopen协议的框架结构、软件实现体系结构、设计实现流程,据此确定协议软件的设计编程思想。CANopen协议软件包括初始化过程和协议栈设计,论文对硬件和协议初始化以及协议栈各功能组成模块的设计过程和执行功能进行了详细说明,特别是对采用具有内嵌CAN功能外设部件的DSP处理器编程实现CANopen协议的方法进行了详细的描述,包括DSP的初始化、中断处理以及接收、发送处理等。最后,对于编程实现的CANopen 协议软件在硬件平合上进行了实际验证,按照CANopen协议的规定,测试各种通讯对象的基本功能,结果表明协议软件实现了CANopen协议的基木要求。
上传时间: 2022-07-18
上传用户:fliang
随着现代工业和科学技术的发展,智能测量仪表在工业生产和科学研究等领域都获得了巨大的发展。本文结合自动化仪表实验室的热工综合实验系统的建设,自主开发了带CAN总线接口的智能式称重仪。本文首先介绍了本课题的研究背景,设计过程中所用到的原理及理论,然后详细描述了其软硬件的实现过程,同时对控制网路中的现场总线进行了系统的描述,最后进行了误差分析及对本论文进行了总结。现场总线部分主要集中在第二章和第五章,第二章中介绍了OSI参考模型及各种网络的概念及术语,第五章中则对引出的一种现场总线(CAN总线)进行了研究与实现,该章首先从其网络模型上入手,介绍了各层的功能及层次结构,然后重点转到其中的一层——应用层进行研究。应用层选取了在欧洲非常流行的CANopen协议,最后给出了数字式称重仪成为CANopen网络下最小能力节点的实现过程。本文的主要内容有:(1)智能称重仪硬件电路的设计,包括高精密参考电压源、小信号放大电路及其非线性补偿电路、串行口通讯及总线通讯电路等的设计:(2)软件编程及调试,实现了人机接口的参数设定、量程变换、去皮功能,数字滤波、分段线性化输出及串口通讯等功能;(3CANopen协议研究,给出了CANopen协议的详细描述,同时按其标准完成了CANopen协议下最小能力设备的实现过程。
上传时间: 2022-07-19
上传用户:jiabin
前言-串行链路和TCP/IP上的MODBUS标准介绍该标准包括两个通信规程中使用的MODBUS应用层协议和服务规范:·串行链路上的MODBUS MODBUS串行链路取决于TIA/EIA标准:232-F和485-A。·TCP/IP上的MODBUS MODBUS TCP/IP取决于IETF标准:RFC793和RFC791有关。串行链路和TCP/IP上的MODBUS是根据相应ISO层模型说明的两个通信规程。下图强调指出了该标准的主要部分。绿色方框表示规范。灰色方框表示已有的国际标准(TIA/EIA和IETF标准)。MODBUS标准分为三部分。第一部分(“Modbus协议规范”)描述了MODBUS事物处理。第二部分(“MODBUS报文传输在TCP/IP上的实现指南”)提供了一个有助于开发者实现TCP/IP上的MODBUS应用层的参考信息。第三部分(“MODBUS报文传输在串行链路上的实现指南”)提供了一个有助于开发者实现串行链路上的MODBUS应用层的参考信息。
标签: modbus协议
上传时间: 2022-07-19
上传用户:1208020161