CANOpen应用层和通讯协议(CiA301)
CANOpen应用层和通讯协议,基于CiA301的中文翻译,整理好了书签,学习CANopen必备资料。CANopen应用层和通信协议目录1适用范围2参考资料2.规范性引用2.2信息参考3缩写和定义·非·垂8888831缩写3.2定义…标准帧扩展帧.999CAN-工DCOB-ID·········实体FSA,,,设备域9逻辑设备,++Node-ID+++++,.,+·+···对象9虚拟设备建模…104.1设备域模型104.2通信参考模型.4.2.1简述14.2.2 CANopen应用层………….114.2.2.1概述··::············::··114.2.22服务原语1142.2.3应用层服务124.3 CANopen设备模型43.1简述..124.4通信协议分类··;·······∴134.4.1简述4.4.2主/从协议6··134.4.3客户端/服务器协议1444.4生产者/消费者协议-推/拉模式144.45对象字典网络系统模型1545.1设备协议154.5.2应用协议155物理层5.1OS参考模型.∴…16介质相关接口53物理介质连接.54物理信令…166数据链路层186.1简述…∴186.2AN帧类型·4···:·;··4·44···.···:·4·4·4··4··+∴187应用层.197.1数据类型和编码规则..197.1.1数据类型和编码规则简述.19⊙CA2011-保留所有权利CANopen应用层和通信协议7.1.2数据类型定X位序207.1.3位序列7.1.3.1位序列定义7.1.3.2位序列的传输语法……207.1.4基本数据类型217.1.4.1简述217.1.4.27.1,4.3 Boolean.……7.1.4.4Void.7.1. 4.5 Unsigned interge222222111127.1.4.6 Signed Integer....7.1.4.7浮点数.··+·“·4·“··+:···;4······+······7.1.5复合数据类型237.1.6扩展数据类型7.1.6.1简述7.1.6.2八进制字符…27.1.6.3可显示字符串7.1.6.4 Unicode字符串7.1.6.5时间2223444247.1.6.6时间差.47.1.6.7域247.2通信对象247.2.1简述247.2.2过程数据对象(PDO).257.2.2.1简述257.2.2.2传输模式267.2.2.3触发模式.….267.2.2.4PD0服务7.2.2.5PD0协议287.2.3寻址PD0MPD0)7.2.3.1简述.287.2.3.2MPD0寻址模式297.2.3.3PD0服务297.2.3.4MD0协议307.2.4服务数据对象(SD)7.2.4.1简述317.2.4.2SD0服务7.2.4.3S00协议…43服务器49服务器49客户端服务器.…537.25同步对象(SYNC)597.2.5.1简述597.2.5.2SYNC服务597.2.5.3同步协议…7.2.6时间戳对象(TIME)7.2.6.1简述607.2.6.2TIME服务607.2.6.3TIME协议和“……………617.2.7应急对象(EMCY617.2.7.1应急对象的使用617.2.7.2应急的对象服务…ccⅰA2011-保留所有权利CANopen应用层和通信协议7.2.7.3应急对象协议…1547.28网络管理···.·:4·········7.2.8.1简述7.2.8.2NM服务7.2.8.3NMT协议6973网络初始化和系统 boot-up∴747.3.1简化的MMT启动∴747.3.2NT状态机.757.3.2.1概述7.3.2.2MMT状态767.3.2.3MT状态转换7.3.3通用预定义连接集7.3.4特定预定义连接集…787.3.5受限CAN-IDs7974对象字典7.4.1常规结构·++·“+“797.42索引和子索引的使用.807.4.3对象代码的使用7.4.4数据类型的使用.817.4.5访问权限的使用∴817.4.6类别和条目类别的使用.7.4.7数据类型条目的使用827.4.7.1简述7.4.7.2对象字典条目的组织结构7.4.8预定义复合数据类型规范7.4.8.1PD0通讯参数记录规格847.4.8.2PD0映射参数记录规格7.4.8.3SD0参数记录规格857.4.8.4身份记录规格857.4.8.50S调试记录规格.857.4.8.60S命令记录规格通信协议规范867.51对象及其条目说明规范∴867.5.2通信协议对象的详细规范877.5.2.1对象1000:设备类型1877.5.2.2对象1001h:错误寄存器7.5.2.3对象10021:制造商状态寄存器7.5.24对象1003:预定义错误域897.5.2.5对象1005:COB-ID同步消息∴917.5.2.6对象1006:通信循环周期.927.5.27对象1007:同步窗长度.927.5.28对象1008:制造商设备名称7.5.2.9对象1009:制造商的硬件版本937.5.2.10对象100A1:制造商软件版本947.5.2.11对象1000:监护周期947.5.2.12对象100D:生存周期因子7.5.2.13对象1010:保存参数957.5.2.14对象1011:恢复缺省参数977.5.2.15对象10121:时间戳对象COB-ID1007.5.2.16对象1013:高分辨率时间戳1017.5.2.17对象1014: EMCY COB-ID1017.5.2.18对象1015:EMCY抑制时间.1027.5.2.19对象1016:消费者心跳超时.103⊙CA2011-保留所有权利CANopen应用层和通信协议7.52.20对象1017:生产者心跳超时………1047.5.221对象1018:对象身份1057.5.2.22对象1019:同步计数器溢出值7.5.2.23对象1020:验证配置1077.5.2.24对象1021:存储EDS1087.5.2.25对象1022:存储格式1097.5.2.26对象1023:0S命令7.5.2.27对象1024:0s命令模式…·;·中1117.5.2.28对象10251:0s调试接口.1127.5.2.29对象1026:0S提示符命令接口.1137.5.2.30对象1027:模块列表1147.5.231对象1028:应急消费对象7.5.2.32对象1029:错误行为对象.1177.5.2.33对象1200127F:SD0服务器参数1187.5.234对象128012F:SD0客户端参数.1217.5.235对象1400~15FF1:RPD0通信参数1237.5.2.36对象160017FF:RPD0映射参数.1267.5.2.37对象180019FB:TPD0通信参数1297.5.238对象1A00"1BF:TPD0映射参数1347.5.2.39对象1FA011FCF:对像扫描仪列表1367.5.2.40对象1FD0^1FFR:对象分配列表…138附件A(更多信息)140注译版木记录142CA2011-保留所有权利CANopen应用层和通信协议1适用范围本规范定义了 CANopen应用层。包括数据类型、编码规则、对象字典以及 CANopen通信服务协议。此外,本规范也定义了 CANopen网络管理服务协议本规范规定了 CANopen通信协议,例如物理层、通信对象标识符预定义连接集、应急对象( Emergency)、时间戳和同步通笮对象⊙CA2011-保留所有权利CANopen应用层和通信协议2参考资料2.1规范性引用/EN61131-3EN61131-3,可编程控制器一一第3部分:编程语言/IS07498-1/IS07498-1,信息技术-开放系统互连-基本参考模型:基本模型/IS08859/IS08859,信息技术——8位单字节编码图形字符集ISol!898-1/Is011898-1,道路车辆—控制器区域网络(CAN)——第1部分:数据链路层和物理信令/IS0ll898-2/IS0118982,道路车辆——控制器区域网络(CAN)—一第2部分:高速介质访问单元/IS01l8983ⅠS0118983,道路车辆——控制器区域网络CAN——第3部分:低速度、容错的介质相关接口。/IS010646/IS010646,信息技术通用多八位编码字符集(LCS)2.2信息参考/IEEE754/TEEE754,标准的二进制的浮点运算/IEC62390IEC TR62390,常规的白动化设备一协议的准则3缩写和定义3.1缩写ARQ自动重复请求CAN控制局域网CAN IDCAN标识符COB通信对象COB-IDCOB标识符CRC循环冗余校验CSDOClicnt-SDODAM目的地址模式FSA有限状态机LLO逻辑链路控尙LSB最低位/字节MAC介质访问控制MDI介质相关接口MPDO多路复用PD0MSB最高位/字节网络管理NODE-ID节点标识符OSI开放系统互连PDO过程数据对象PLS物理层的信令ccⅰA2011-保留所有权利CANopen应用层和通信协议PMA物理介质连接RPDO接收PDORTR远程传输请求SAM源地址模式SDO服务数据对象SSDOServer-SDoSYNC同步对象TPDO发送PDO3.2定义标准帧/IS01898-1/屮定义的最多可包含8个字节数据和11位标识符的消息扩展帧/IS011898-1/中定义最多可包含8个字节数据和29位标识符的消息CAN-ID/IS011898-1/中定义的CAN数据和远程帧标识符COB-ID包含CAN-1D和附加控制位的标识符实体特指事物如人、地点、过程、概念、组织或事件FSA若干计算行为组成的模式作为一个状态,一个启动状态,输入一个字母,映射输入符号和当前状态到下一状态的转换功能:以一个宁符串输入作为启动状态的计算起始;依赖传递函数变换到新状态(译者注:无法按字面翻译,译者定义为表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型,即有限状态机)。设备域1.自动化系统中独立联网的物理实体,在特定的上下文和分隔符中使用自身接口执行指定的功能2.在自动化系统中向其他实体扶行控制、操纵和/或传感功能和相关接口的实体。逻辑设备根据改备域模型所组织的一系列对象和行为,描述了该设备的数据和行为使网络所理解Node-ID网络范围内每个 CANopen设备的独特标识对象封装了状态和行为有明确界限和身份的实体虚拟设备能够像域设备一样完成所属功能事件的软件实体,⊙CA2011-保留所有权利9CANopen应用层和通信协议4建模4.1设备域模型如图1所示,设备域至少包含一个 CANopen设备。其中每个 CANopen设备至少带有一个包含数据链路层(见本章第6节)和物理层(见本章第5节)的网络接凵、一个node-1D、至少一种通信状态机(FSA)。通信状态机不仅带有NMT从状态机(见7.3.2),还包括应急状态机(见7.27)等共他附加状态机。这些附加状态机定义于所谓的框架协议内,不属于本协议范围。一个 CANopen设备至少包含一个多至8个逻辑设备,且不可分割于多个设备域。每个逻辑设备可包含一个逻辑设备状态机(可选)和多个虚拟设备。逻辑设备不可分割于多个 CANopen设备。逻辑设备定义于所谓的设备协议中(见4.5.1),不在本协议的范围内。每个虚拟设备包含一个虚拟设备状态机且不可分割于多个逻辑设备。虚拟改备定义于所请的应用协议(请参阅子句452),不在本协议范围内。设备域的最小化结构如图2所示。Field deviceCANopen device (Node-ID)CANopen device (Node-ID)CommunicationCommunicationCommunicationCommunicationFSA●●FSAFSAFSA1st logical device1st logical deviceLogical deviceLogical deviceLogical deviceLogical device●自FSAFSAFSAFSAVirtual deviceVirtual deviceVirtual deviceVirtual deviceDevice●●DeviceDevice●●●DeviceFSAFSAFSAFSA8th logical device8th logical deviceLogical device●●Logical devicLogical device@●●Logical deviceFSAFSAFSAFSAVirtual deviceVirtual deviceVirtual deviceVirtual deviceDevice鲁●●DeviceDeviceDeviceFSAFSAFSAFSA图1:设备域模型ccⅰA2011-保留所有权利
- 2020-12-04下载
- 积分:1
OpenCV中文参考手册
OpenCV中文参考文件,应用程序接口(API)中文参考资料al OpenCV参考手册·ΩpencⅤ编程简介(矩阵/图像/姒频的基本·Ω中文参考手册读写操作)入门必读· OpenCV概述1.图像处理2.结构分析CXCore中文参考手册3.运动分析与对象跟踪4.模式识别1.基础结构5.照相机定标和三维重建2.数组操作3.动态结构HgGU中文参考手册4.绘图函数5.数椐保存和运行时类型信息1. HighGUI概述6,其它混合函数2.简单图形界面7.錯误处理和系统函数3.读取与保存图傯4.视频读写数机器学习中文参考手册5.实用涵数与系统函数OpencⅤ编码样式指南(阅读 Opencv代码前必CIMage类参考手册读CiMage中的陷阱和BUGOpenCV的Phon接口Opengν编程简介(矩阵/图像/视频的基本读写操作)Wikipedia,自由的百科全书Introduction to programming with OpenCVOpencv编程简介作者: Gady AgamDepartment of Computer ScienceJanuary 27, 2006Illinois Institute of TechnologyUrl:http://www.cs.it.edu/ragam/cs512/lect-notes/opency-intro/opency-intro. html#SECTION00040000000000000000翻译: chenyusiyuanJanuary 26, 2010.http:/blog.csdn.net/chenyusiyuan/archive/2010/01126/5259060.aspx摘要:本文旨在帮助读者快速入门 Openc,而无需阅读冗长的参考手册。掌握了 Opencv的以下基础知识后,有需要的话再查阅相关的参考手册。目录[原]1二、简介o1.11、 Openc的特点1.1.1(1)总体描述(2)功能113(3) OpenCv模块122、有用的学习资源2.1(1)参考手册;122(2)网络资源1.23(3)书籍124(4)视瓶处理例程(在< openly-root>/ samples/c/)125(5)图像处理例程(在< openly-root>/ samples/c/0133、 openc命名规则2(2)矩阵数据类型:■1.33(3)图像数据类型134(4)头文件:o144、编译建议.14.1(lInux;1.4.2(2) Windowso155、C例程2二、GUI指令2.11、窗口管理2.1.1(1)创建和定位一个新窗口∶2.12(2)载入图像2.13(3)显示图後2.14(4)关团窗口2.15(5)改变窗o222、输入处理2.2.1(1)处理鼠标事件222(2)处理键盘事件■2.23(3)处理滑动条事件·3三、 OpenCV的基本数据结构o3.11、图像数据结构3.1.1322、知阵与向量3.2,1(1)矩阵3232).元批333、其它结构类型33.1(1)点332(2)矩框大小(以像素为精度)∵■333(3)矩形框的偏置和大4四、图像处理4,11、图像的内存分配与释放411(1)分配内存给一幅新图像4.1.2(2)释放图像■4.13(3)复制图像414(4)设置/获取感兴趣区域ROI415〈5)设置/获取感兴趣通道COI422、图像读写4.2,1(1)从文件中读入图像4.2.2(2)保存图o433、访回图像像素4.3.1(1)假设你要访间第k通道、翦列的像素43,2(2)间接访间;(通用,但效可访间任意格式的图像)433(3)直接访间:(效率高,但容易岀错)434(4)基于指针的直接访闻:(简单高效435(5)基于c++ wrapper的直接访间(更简单高效a444、图像转换441(1)字节型图像的灰度-彩色转换442(2)彩色图像->灰度图像44不同彩色空间之间的转換a455、绘图指令4.5,1(1)绘制矩形452(2)绘制圆形45.3(3)绘制线段454(4)绘制一组线段455(5)绘制组填充颜色的多边形:456(6)文本标注5五、矩阵处理o5,11、矩阵的内存分配与释放32(3)为新矩阵分配达存释放矩阵内存514(4)复制矩阵5,15(5)初始化矩阵5.1.6(6)初始化矩阵为单位矩阵522、访回矩阵元焘52.1(1)假设需要访间一个2D浮点型矩阵的第(i,j个单元,5.2.2(2)间接访间5.23(3)直接访间(假设矩阵数据按4宰节行对齐)524(4)直接访间(当数据的行对齐可能存在间隙时 possible alignment gaps)5,25(5)对于初始化后的矩阵进行直接i°533、矩阵/向量运算5.3,1(1)矩阵之间的运算532(2)矩阵之间的元素级运算:53,3(3)向量乘积534(4)单一矩阵的运535(5)非齐次线性方程求解■536(6)特征債与特征向量(矩阵为方阵)6六、视频处理611、从视频流中捕捉一帧画面61.2(2)Y支从摄像头或视频文件(AM格式)中捕捉帧画面6,11(1)open个摄像头捕捉器6,1,3(3)初始化一个祕频文件捕捉器614(4)捕捉一帧画面61.5(5)释放视频流捕捉o622、获取/设置视频流信息6,2.1(1)获取视频流设备信息6,2,2(2)获取帧图信息6,23(3)设置丛视频文件抓取的第一帧画而的位置∵633、保存视频文件6.3,1(1)初始化视频编写器6.3,2(2)保持视频文件63)释放视频编写器[编辑]简介[编辑]1、 OpenCV的特点[编辑](1)总体描述· Opencv是一个基于CC++语言的开源图像处理函数库其代码都经过优化,可用于实时处理图像具有良好的可移植性可以进行图像/视频载入、保存和采集的常规操作具有低级和高级的应用程序接口(API·提供了面向 Intel IPP高效多媒体函数库的接口,可针对你使用的 Intel CPU优化代码,提高程序性能(译注: OpenC2.0版的代码已显著优化,无需IPP来提升性能,故2.0版不再提供IPP接口)[编辑(2)功能图像数据操作(内存分配与释放,图像复制、设定和转换)Image data manipulation (allocation, release, copying, setting, conversion·图像/视频的输入输出(支持文件或摄像头的输入,图像/视频文件的输出)Image and video I/o (file and camera based input, image/video file output).矩阵/向量数据操作炇线性代数运算(矩阵乘积、矩阵方程求解、特征值、奇异值分解)Matrix and vector manipulation and linear algebra routines(products, solvers, eigenvalues, SVD)支持多种动态数据结构(链表、队列、数据集、树、图)Various dynamic data structures(lists, queues, sets, trees, graphs)·基本图像处理(去噪、边缘检测、角点检测、采样与插值、色彩变換、形态学处理、直方图、图像金字塔结构)Basic image processing(filtering, edge detection, corner detection, sampling and interpolation, colorconversion, morphological operations, histograms, image pyramids)·结构分析(连通域/分支、轮廓处理、距离转换、图像矩、模板匹配、霍夫变换、多项式逼近、曲线拟合、椭圆拟合、狄劳尼三角化)Structural analysis(connected components, contour processing distance transform, various momentstemplate matching, Hough transform, polygonal approximation, line fitting, ellipse fitting, Delaunaytriangulation).·摄像头定标(寻找和跟踪定标模式、参数定标、基本矩阵估计、单应矩阵估计、立体视觉匹配)Camera calibration(finding and tracking calibration patterns, calibration, fundamental matrixestimation, homography estimation, stereo correspondence).·运动分析(光流、动作分割、目标跟踪)Motion analysis(optical flow, motion segmentation, tracking)目标识别(特征方法、HMM模型Object recognition(eigen-methods HMM)基本的GUI(显示图像/视频、键盘/鼠标操作、滑动条)Basic Gui (display image/ video keyboard and mouse handling, scroll-bars)图像标注(直线、曲线、多边形、文本标注)Image labeling(line, conic, polygon, text drawing[编辑](3) Opencvi模块cv-核心函数库Vaux-辅助函数库:e0机数线性代数作m|-机器学习函数库[编辑]2、有用的学习资源[编辑](1)参考手册:< opencv-root>/ docs/index. htm(译注:在你的 OpenCV安装目录< opencv-root>内)[编辑](2)网络资源:Etkmi:http:/www.intel.com/technology/computing/opencvl[编辑](3)书籍:Open Source Computer Vision Libraryby Gary R Bradski, Vadim Pisarevsky, and Jean-Yves Bouguet, Springer, 1st ed. (June, 2006)chenyusiyuan:补充以下书籍Learning OpenCV -Computer Vision with the OpenCV Libraryby Gary Bradski Adrian Kaehler, O Reilly Media, 1 st ed(September, 2008)OpenCv教程——一基础篇作者:刘瑞祯于仕琪,北京航空航天大学出版社,出版日期:200706(4)视频处理例程(在< opencv-root>/ samples/c/):·颜色跟踪: camshiftdemo点跟踪:| kemo动作分割: motel边缘检测: laplace[编辑](5)图像处理例程(在< opencv-root>/ samples/c/)边缘检测:edge图像分割: pyramid_ segmentation形态学: morphology直方图: demist距离变换: distrains椭圆拟合: fitellipse[编辑]3、 OpenCv命名规则[编辑](1)函数名CvActionTargetMod(.)Act⊥cn=核e functionality)(e.g. set, create)Targettarget image area) (e, g. contour, polygon)Modih (optional modifiers) (e.g. argument type)[编辑](2)矩阵数据类型:CV_(SIUIF)Cs=符号整型UE,q.:Cv_8UC1是指_个8位无符号整型单通道矩阵CV 32FC2是指一个32位浮点型双道道矩阵[编辑](3)图像数据类型:IPL_DEPTH_⊥nc1ude< VAux.h>include inc⊥ ude sinclude /一般不需要,cv,h内已包含该头文件[编辑]4、编译建议[编辑](1)Linux:g++ helloworld. cpp-o hello-worldI /usr/local/include/opencv -L /usr/local/liblm-Icv-highqui-Icvaux[编辑](2)Windows在Ⅵ visual studio的选项和项目牛设置好 OpenCv相关文件的路径。[编]5、C例程hello-worid. cpp/该程序从文件中读入一幅图像,将之反色,然后显示出来⊥nc1udeinclude ⊥nc1ude#include #include highgui.h>int main (int argc, char argv[IplImage* img=0int height, width, step, channelsuchar *datai. i,i,kif(argcheight iwidthimg->widthStepimg->widthstep ichannelsimg->channelsdata(uchar *)img->imageData iprint f("Processing a dx%d image with d channels", height, width, channels)create a windowcvNamedwindow("mainwin CV WINDOW AUTOSIZEcvMoveWindow ("mainwin", 100, 100)t the image相当于 caNot(img);for(i-o; isheighti 1++) for(j=; j
- 2020-12-10下载
- 积分:1