CN101106504A - 基于can总线的智能自主机器人分布式通信系统 - Google Patents
基于can总线的智能自主机器人分布式通信系统 Download PDFInfo
- Publication number
- CN101106504A CN101106504A CNA2007101181057A CN200710118105A CN101106504A CN 101106504 A CN101106504 A CN 101106504A CN A2007101181057 A CNA2007101181057 A CN A2007101181057A CN 200710118105 A CN200710118105 A CN 200710118105A CN 101106504 A CN101106504 A CN 101106504A
- Authority
- CN
- China
- Prior art keywords
- bus
- data
- controller
- register
- microprocessor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Manipulator (AREA)
Abstract
本发明涉及一种基于CAN总线的智能自主机器人分布式通信系统,它的总体构成包括机器人内部核心CPU、CAN总线适配卡和CAN总线网络。CAN总线适配卡包括硬件部分和软件部分,硬件部分包括微处理器、CAN总线收发器和电平转换芯片,软件部分包括CAN初始化、数据发送和数据接收。由于本发明利用CAN总线实现内部各模块间的数据传输,减少了智能自主机器人内部的连线数,使得机器人内部各模块间的数据接口标准化,提高了内部通信系统的可靠性和可扩展性,增强了系统抗干扰能力,能实现有序传输。本发明可广泛应用与计算机应用技术和智能控制领域。
Description
技术领域
本发明涉及一种通信系统,特别是一种基于CAN总线的智能自主机器人分布式通信系统。
背景技术
目前,机器人研究和发展方向正在向智能化发展,随着机器人智能化水平的不断提高,机器人内部数据传输量也随之猛增。对于智能水平较低的机器人来说,内部控制器的数据处理量相当小,一般只有一些基本指令,且无数据冲突和传输时延的问题存在。但对于一个具有环境感知、行为决策能力的智能自主机器人来说,中央处理器与运动模块、感知模块之间存在较大的数据量,且传输时序、信息融合、传输线数量等问题凸现。电子设备的大量出现及针对各种控制系统的实际需求,各种通信网络相继产生;但由于它们的总线结构、通信协议及传输特点各不相同,所以给不同设备之间的连接带来很多麻烦。通过总线的方式解决各内部模块间的数据传输问题,正在被尝试用于智能自主机器人的设计制造中。
控制局域网(Controller Area Network,CAN)是一种能有效支持分布式控制和实时控制的串行通信网络。1993年11月,国际标准化组织(InternationalOrganization for Standardization,ISO)正式颁布了控制器局域网CAN国际标准(ISO11898)。CAN总线可使用双绞线、同轴电缆和光导纤维作为通信介质。CAN总线采用12位帧标识和非破坏位仲裁总线结构,可以确定数据块的优先级,保证在网络节点冲突时最高优先级节点不需要冲突等待。由于采用多主竞争式总线结构,CAN总线具有多主站运行和分散仲裁的串行总线以及广播通信的特点。CAN总线上任意节点可在任意时刻主动向网络上其它节点发送信息而不分主次,因此可以在各节点间实现自由通信。CAN总线目前广泛用于分布式测控系统,尤其以工业应用为主。机器人领域应用CAN总线,往往用于人机交互、机械手臂远程控制等。
CAN协议的一个最大特点是废除了传统的站地址编码,而代之以对通信数据块进行编码。采用这种方法的优点可使网络内的节点个数在理论上不受限制,数据块的标识码可由11位或29位二进制数组成,因此可以定义211或229个不同的数据块,这种按数据块编码的方式,还可使不同的节点同时接收到相同的数据,这一点在分布式控制系统中非常有用。数据段长度最多为8个字节,可满足通常工业领域中控制命令、工作状态及测试数据的一般要求。同时,8个字节不会占用总线时间过长,从而保证了通信的实时性。CAN协议采用CRC(循环冗余码校验,Cyclical Redundancy Check)检验并可提供相应的错误处理功能,保证了数据通信的可靠性。CAN卓越的特性、极高的可靠性和独特的设计,特别适合工业过程监控设备的互连,因此,越来越受到工业界的重视,并已公认为最有前途的现场总线之一。
发明内容
针对上述问题,本发明的目的是提供一种利用CAN总线实现机器人内部各模块间的数据接口标准化并有序传输的通信传输系统。
为实现上述目的,本发明采取以下技术方案:一种基于CAN总线的智能自主机器人分布式通信系统,其特征在于:它包括机器人内部核心CPU、CAN总线适配卡和CAN总线网络三部分,所述CAN总线适配卡一方面与所述机器人内部的核心CPU进行双向通信,另一方面连接所述CAN总线网络,并在总线上挂接各个控制单元,所述CAN总线网络两端各有一匹配总线阻抗的电阻;所述CAN总线适配卡由硬件部分和系统软件部分组成:所述硬件部分包括微处理器、电平转换芯片和CAN总线收发器,所述CAN总线收发器一端与所述微处理器的内部CAN总线控制器连接,另一端与所述CAN总线网络连接,实现所述微处理器与所述CAN总线网络间数据的双向传输,所述电平转换芯片一端连接所述微处理器内部串口,另一端连接外部RS232,实现所述RS232电平信号与所述微处理器内部串口TTL电平信号间的转换,并对总线端口的一些工作参数进行设置;所述系统软件部分包括CAN初始化、数据发送和数据接收。
所述CAN初始化是设置CAN的通信参数,需初始化的寄存器有模式寄存器(Peli CAN模式)、时分寄存器、接收代码寄存器、屏蔽寄存器、总线定时寄存器以及输出控制寄存器;在复位期间对它们进行写访问,系统中各所述CAN控制器的总线定时寄存器的初始化字相同。
所述微处理器中的中央处理器对接收到的现场各传感器的环境参数检测信号进行转换处理后,发送到所述CAN控制器的发送缓冲区,并启动所述CAN控制器的发送命令,所述CAN控制器根据信息帧中的优先权标识符自动向所述CAN总线网络发送数据。
所述微处理器中的所述CAN控制器检测到所述CAN总线网络上有数据时自动数据,存入其接收缓冲区,并向所述微处理器发送接收中断请求,启动中断接收服务程序,所述微处理器通过执行中断接收服务程序,从所述CAN控制器的接收缓冲区读取数据,并进行处理。
本发明由于采取以上技术方案,其具有以下优点:1、由于本发明利用CAN总线实现内部各模块间的数据传输,使得机器人内部各模块间的数据接口标准化,并有序传输。2、由于本发明采用CAN总线结构,所以减少了智能自主机器人内部的连线数,提高了内部通信系统的可靠性和可扩展性,增强了系统抗干扰能力,并实现了机器人内部各模块的可重构性。3、由于本发明采用了CAN总线结构,所以大大提高了智能机器人的内部数据传输量,同时解决了数据冲突和传输时延问题。4、由于本发明采用了CAN总线结构,所以数据通信具有突出的可靠性、实时性和灵活性,具有较高的通信速率,较远的通信距离,以及良好的抗电磁干扰能力。本发明可广泛应用与计算机应用技术和智能控制领域。
附图说明
图1是本发明系统框架结构示意图
图2是CAN总线适配卡硬件部分
图3是本发明系统软件主程序流程图
具体实施方式
下面结合附图和实施例,对本发明进行详细的描述。
如图1所示,本发明的总体构成包括机器人内部核心CPU1、CAN总线适配卡2和CAN总线网络3三部分。其中,机器人内部核心CPU1主要负责对系统数据的接收、管理及控制命令的发送。CAN总线适配卡2由硬件部分和系统软件部分组成,其硬件部分包括微处理器21、电平转换芯片22和CAN总线收发器23。CAN总线网络3上挂接各个控制单元,各控制单元以单片机为核心,主要负责对各个控制单元进行数据接收、管理及控制命令的发送。CAN总线适配卡2一方面与机器人内部的核心CPU1进行双向通信,另一方面连接CAN总线网络3,与CAN总线网络3上的各控制单元(如运动控制单元、视觉控制单元和网络控制单元等等)进行通信。CAN总线网络3两端各有一约120欧的电阻,用以匹配总线阻抗。
如图2所示,CAN总线适配卡2硬件部分包括微处理器MB90385、CAN总线收发器AT82C50及电平转换芯片MAX232。MAX232芯片一端连接微处理器MB90385的TTL电平串口,另一端连接RS232,完成RS232电平信号与TTL电平信号间的转换;TTL电平串口与微处理器内部数据总线连接,完成串口与内部数据总线间数据的双向传输;内部数据总线还与微处理器内部的中央处理器(F2MC-16LX内核)和CAN总线控制器连接:数据总线和中央处理器的连接完成数据总线和中央处理器间的信息传输,数据总线和CAN总线控制器的连接完成内部数据总线与CAN总线控制器间数据的双向传输;CAN总线收发器一端与内部CAN总线控制器连接,另一端与CAN总线连接,完成处理器与CAN总线间数据的双向传输。
电路中使用的微处理器是FUJITSU公司生产的带有芯片CAN的微控制器MB90385型单片机,它由中央处理器(F2MC-16LX内核)、CAN总线控制器、内部数据总线和串口组成;其功能部分由接口管理逻辑、发送缓存器、接受缓存器、位流处理器、位定时逻辑、收发逻辑、错误管理逻辑及控制器接口逻辑等构成。CAN控制器具有多主结构、总线访问优先权、成组与广播报文功能及硬件滤波功能。CAN控制器的输入时钟频率为4MHh,输出可编程控制。
MB90385有很多新功能:标准结构和扩展结构报文的接受和发送、64字节的接收FIFO(先进先出,First In First Out)、标准和扩展帧格式都具有单/双接收滤波器、可进行读/写访问的错误计数器、可编程的错误报警限制和支持热插拔(无干扰软件驱动位速率监测)。可编程的错误报警限制包括最近一次的错误代码寄存器、每一个CAN总线网络3错误都可以产生错误中断、具有丢失仲裁定位功能的丢失仲裁中断、单发方式(当发主错误或丢失仲裁时不重发)以及只听方式(监听CAN总线,无应答,无错误标志)。因此,系统的智能节点均选用MB90385作为CAN控制器。
CAN总线收发器A82C250作为CAN控制器和CAN总线网络3之间的接口,用于提供总线的差动发送能力和CAN控制器差动接收能力,符合控制器局域网CAN国际标准(ISO11898),而且可以增大通信距离,提高系统的瞬间抗干扰能力,保护总线,降低射频干扰(RFI)实现热防护等。
MAX232除完成RS232电平与微控制器接口电路的TTL电平间的转换外,还可进行一些总线端口的工作参数设置。
如图3所示,系统软件部分包括CAN初始化、数据发送和数据接收。
CAN初始化主要是设置CAN的通信参数,需要初始化的寄存器有:模式寄存器(Peli CAN模式)、时分寄存器、接收代码寄存器、屏蔽寄存器、总线定时寄存器以及输出控制寄存器等。需要注意的是,这些寄存器仅能在复位期间可写访问,因此,在对这些寄存器初始化前,必须确保系统进入了复位状态,并且系统中各CAN控制器的总线定时寄存器的初始化字必须相同。
中央处理器对接收到的现场各传感器的环境参数(速度、加速度、转矩等)检测信号(数字量、模拟量和开关量)进行转换处理后,发向CAN控制器的发送缓冲区,然后启动CAN控制器的发送命令,此时CAN控制器将自动向总线发送数据,不再需传感器的微控制器进行干预。若系统中有多个传感CAN控制器同时向总线发送数据,则CAN控制器通过信息帧中的标识符来进行仲裁,标识符数值最小的CAN控制器具有对总线的优先使用权。
整个系统中的CAN控制器检测到CAN总线网络3上有数据时会自动接收数据,存入其接收缓冲区,并向MB90385微控制器发送接收中断,启动中断接收服务程序,MB90385通过执行中断接收服务程序,从CAN控制器的接收缓冲区读取数据,并对其进行进一步处理工作。
CAN是控制器局域网络,属于工业现场总线的范畴。本发明结合工业控制方法,将基于CAN总线的工业控制思想移植到机器人内部模块间通信中,很好的解决了智能自主机器人内部通信数据量大,连线过多和处理时序复杂等问题。使智能机器人内部各模块间能够实现简洁高效的分布式通信。
尽管为说明目的公开了本发明的具体实施例和附图,其目的在于帮助理解本发明的内容并据以实施,但是本领域的技术人员可以理解:在不脱离本发明及所附的权利要求的精神和范围内,各种替换、变化和修改都是可能的。因此,本发明不应局限于最佳实施例和附图所公开的内容,本发明要求保护的范围以权利要求书界定的范围为准。
Claims (5)
1.一种基于CAN总线的智能自主机器人分布式通信系统,其特征在于:它包括机器人内部核心CPU、CAN总线适配卡和CAN总线网络三部分,所述CAN总线适配卡一方面与所述机器人内部的核心CPU进行双向通信,另一方面连接所述CAN总线网络,并在所述CAN总线网络上挂接各个控制单元,所述CAN总线网络两端各有一匹配总线阻抗的电阻;所述CAN总线适配卡由硬件部分和系统软件部分组成:所述硬件部分包括微处理器、电平转换芯片和CAN总线收发器,所述CAN总线收发器一端与所述微处理器的内部CAN总线控制器连接,另一端与所述CAN总线网络连接,实现所述微处理器与所述CAN总线网络间数据的双向传输,所述电平转换芯片一端连接所述微处理器内部串口,另一端连接外部RS232,实现所述RS232电平信号与所述微处理器内部串口TTL电平信号间的转换,并对总线端口的一些工作参数进行设置;所述系统软件部分包括CAN初始化、数据发送和数据接收。
2.如权利要求1所述的基于CAN总线的智能自主机器人分布式通信系统,其特征在于:所述CAN初始化是设置CAN的通信参数,需初始化的寄存器有模式寄存器(Peli CAN模式)、时分寄存器、接收代码寄存器、屏蔽寄存器、总线定时寄存器以及输出控制寄存器,在复位期间对它们进行写访问,系统中各所述CAN控制器的总线定时寄存器的初始化字相同。
3.如权利要求1所述的基于CAN总线的智能自主机器人分布式通信系统,其特征在于:所述微处理器中的中央处理器对接收到的现场各传感器的环境参数检测信号进行转换处理后,发送到所述CAN控制器的发送缓冲区,并启动所述CAN控制器的发送命令,所述CAN控制器根据信息帧中的优先权标识符自动向所述CAN总线网络发送数据。
4.如权利要求2所述的基于CAN总线的智能自主机器人分布式通信系统,其特征在于:所述微处理器中的中央处理器对接收到的现场各传感器的环境参数检测信号进行转换处理后,发送到所述CAN控制器的发送缓冲区,并启动所述CAN控制器的发送命令,所述CAN控制器根据信息帧中的优先权标识符自动向所述CAN总线网络发送数据。
5.如权利要求1或2或3或4所述的基于CAN总线的智能自主机器人分布式通信系统,其特征在于:所述微处理器中的所述CAN控制器检测到CAN总线网络上有数据时自动数据,存入其接收缓冲区,并向所述微处理器发送接收中断请求,启动中断接收服务程序,所述微处理器通过执行中断接收服务程序,从所述CAN控制器的接收缓冲区读取数据,并进行处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007101181057A CN101106504A (zh) | 2007-06-28 | 2007-06-28 | 基于can总线的智能自主机器人分布式通信系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007101181057A CN101106504A (zh) | 2007-06-28 | 2007-06-28 | 基于can总线的智能自主机器人分布式通信系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101106504A true CN101106504A (zh) | 2008-01-16 |
Family
ID=39000194
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2007101181057A Pending CN101106504A (zh) | 2007-06-28 | 2007-06-28 | 基于can总线的智能自主机器人分布式通信系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101106504A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102523097A (zh) * | 2011-10-26 | 2012-06-27 | 清华大学 | 一种总线供电式分布式测控节点信息管道智能控制器 |
CN102914982A (zh) * | 2011-08-05 | 2013-02-06 | 同济大学 | 一种机器人的分布式控制系统总线结构 |
CN105007208A (zh) * | 2015-06-04 | 2015-10-28 | 南京阿凡达机器人科技有限公司 | 一种基于can总线的机器人系统内通信方法 |
CN106685781A (zh) * | 2016-12-29 | 2017-05-17 | 雷沃重工股份有限公司 | 一种拖拉机双can系统及数据信息传输方法 |
CN108023797A (zh) * | 2016-10-28 | 2018-05-11 | Lnb科技株式会社 | 利用控制器局域网络通信的公共广播装置 |
CN108616436A (zh) * | 2018-06-11 | 2018-10-02 | 浙江国自机器人技术有限公司 | 一种can交换机及机器人 |
CN108647180A (zh) * | 2018-05-28 | 2018-10-12 | 北京比特大陆科技有限公司 | 一种运算系统及相应的电子设备 |
CN112235173A (zh) * | 2020-09-29 | 2021-01-15 | 深圳优地科技有限公司 | 通信控制方法、装置、终端设备及存储介质 |
-
2007
- 2007-06-28 CN CNA2007101181057A patent/CN101106504A/zh active Pending
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102914982A (zh) * | 2011-08-05 | 2013-02-06 | 同济大学 | 一种机器人的分布式控制系统总线结构 |
CN102523097A (zh) * | 2011-10-26 | 2012-06-27 | 清华大学 | 一种总线供电式分布式测控节点信息管道智能控制器 |
CN102523097B (zh) * | 2011-10-26 | 2014-06-11 | 清华大学 | 一种总线供电式分布式测控节点信息管道智能控制器 |
CN105007208A (zh) * | 2015-06-04 | 2015-10-28 | 南京阿凡达机器人科技有限公司 | 一种基于can总线的机器人系统内通信方法 |
CN105007208B (zh) * | 2015-06-04 | 2018-11-23 | 南京阿凡达机器人科技有限公司 | 一种基于can总线的机器人系统内通信方法 |
CN108023797A (zh) * | 2016-10-28 | 2018-05-11 | Lnb科技株式会社 | 利用控制器局域网络通信的公共广播装置 |
CN106685781A (zh) * | 2016-12-29 | 2017-05-17 | 雷沃重工股份有限公司 | 一种拖拉机双can系统及数据信息传输方法 |
CN108647180A (zh) * | 2018-05-28 | 2018-10-12 | 北京比特大陆科技有限公司 | 一种运算系统及相应的电子设备 |
CN108647180B (zh) * | 2018-05-28 | 2024-02-06 | 北京比特大陆科技有限公司 | 一种运算系统及相应的电子设备 |
CN108616436A (zh) * | 2018-06-11 | 2018-10-02 | 浙江国自机器人技术有限公司 | 一种can交换机及机器人 |
CN112235173A (zh) * | 2020-09-29 | 2021-01-15 | 深圳优地科技有限公司 | 通信控制方法、装置、终端设备及存储介质 |
CN112235173B (zh) * | 2020-09-29 | 2022-03-22 | 深圳优地科技有限公司 | 通信控制方法、装置、终端设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101106504A (zh) | 基于can总线的智能自主机器人分布式通信系统 | |
US5247626A (en) | Fddi controller having flexible buffer management | |
CN101175077B (zh) | 光纤通道知识产权核 | |
CN110471872A (zh) | 一种基于zynq芯片实现m-lvds总线数据交互系统和方法 | |
CN103064815B (zh) | 一种单spi总线控制多can接口的控制方法 | |
CN103049414A (zh) | Fc总线与can总线间数据的转换及传输方法 | |
CN103440219B (zh) | 一种通用总线转换桥ip核 | |
CN106603358B (zh) | 一种基于mlvds接口的快速总线系统和实现方法 | |
CN102185833B (zh) | 一种基于fpga的fc i/o并行处理方法 | |
CN103248526A (zh) | 实现带外监控管理的通信设备、方法及主从切换方法 | |
CN107819659B (zh) | 一种基于spi的智能级联通信网络 | |
GB2409073A (en) | Dedicated connection between CPU and network interface in multi-processor systems | |
CN102253914B (zh) | 数据传输处理方法、装置和设备接口 | |
CN104008082A (zh) | 1553b总线rt节点与can总线的转换器 | |
CN110321304A (zh) | 车载环境下fpga和stm32之间的总线通信系统 | |
CN207968522U (zh) | 一种实现多主通信方式的rs485总线驱动电路 | |
CN210780877U (zh) | 基于sdio接口的嵌入式多cpu互联电路 | |
CN111614533B (zh) | Powerlink从站模块扩容系统及从站与总线主节点的交互方法 | |
CN112968822A (zh) | 一种基于以太网phy的一主多从实时通讯系统及方法 | |
CN209472629U (zh) | 基于pcie总线的rs422通信与can通信设备 | |
CN100574319C (zh) | 计算机系统中的基于信用的流动控制的方法、系统和设备 | |
CN201601690U (zh) | 一种基于EtherCAT技术的输入输出模块 | |
CN105515925A (zh) | 一种uart多主实时通信系统 | |
CN201820120U (zh) | 自适应多总线执行机构控制器 | |
CN103873330A (zh) | 一种rs422—can总线转换器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |