2025MTM金屬世界博覽會(huì)·上海 MTM EXPO 2025
2025-01-09 【機(jī)床商務(wù)網(wǎng)欄目 機(jī)床上下游】CANopen是一種架構(gòu)在控制局域網(wǎng)路上的高層通訊協(xié)定,包括通訊子協(xié)定及設(shè)備子協(xié)定常在嵌入式系統(tǒng)中使用,也是工業(yè)控制常用到的一種現(xiàn)場(chǎng)總線。
CANopen 實(shí)現(xiàn)了OSI模型中的網(wǎng)絡(luò)層以上(包括網(wǎng)絡(luò)層)的協(xié)定。CANopen 標(biāo)準(zhǔn)包括尋址方案、數(shù)個(gè)小的通訊子協(xié)定及由設(shè)備子協(xié)定所定義的應(yīng)用層。 CANopen 支援網(wǎng)絡(luò)管理、設(shè)備監(jiān)控及節(jié)點(diǎn)間的通訊,其中包括一個(gè)簡(jiǎn)易的傳輸層,可處理資料的分段傳送及其組合。一般而言數(shù)據(jù)鏈結(jié)層及物理層會(huì)用CAN來(lái)實(shí)作。除了 CANopen 外,也有其他的通訊協(xié)定(如EtherCAT)實(shí)作 CANopen 的設(shè)備子協(xié)定。
德國(guó)Bosch公司于1983年研發(fā)CAN協(xié)議,用于汽車傳動(dòng)系統(tǒng)的網(wǎng)絡(luò)通訊。后來(lái),他們把它稱為標(biāo)準(zhǔn)ISO11898,目前CANopen由非營(yíng)利組織CiA(CAN in Automaion)進(jìn)行標(biāo)準(zhǔn)的起草及審核工作,基本的 CANopen 設(shè)備及通訊子協(xié)定定義在 CAN in Automation (CiA) draft standard 301. 中。針對(duì)個(gè)別設(shè)備的子協(xié)定以 CiA 301 為基礎(chǔ)再進(jìn)行擴(kuò)充,如針對(duì) I/O 模組的 CiA401 及針對(duì)運(yùn)動(dòng)控制的 CiA402。
CANopen硬件的優(yōu)勢(shì)?
CAN協(xié)議大的突出特點(diǎn)是錯(cuò)誤檢測(cè),限制和處理。當(dāng)CAN設(shè)備檢測(cè)到總線錯(cuò)誤時(shí),會(huì)拒絕之前接收到的位序列,然后發(fā)送“錯(cuò)誤幀”,其完全由CAN芯片本身處理,不需要人為編程。
支持多主站,類似Profibus DP,總線上每個(gè)設(shè)備都是主站,也是從站,免除了人為仲裁的過(guò)程,方便用戶開(kāi)發(fā)。
報(bào)文短幀結(jié)構(gòu),CAN報(bào)文通常只有8個(gè)字節(jié),數(shù)據(jù)幀非常短,在抗干擾能力上具有先天的優(yōu)勢(shì)。解釋一下,為什么短幀結(jié)構(gòu)抗干擾好?如果通訊報(bào)文長(zhǎng),發(fā)送一幀耗時(shí)也就長(zhǎng),假如遇到干擾,辛辛苦苦好不容發(fā)送了一條報(bào)文,結(jié)果因?yàn)楦蓴_對(duì)方還沒(méi)有收到,只能嚎啕大哭。
成本低廉,CAN外設(shè)基本在現(xiàn)在主流芯片上都可以找到,20幾塊錢的MCU都支持CAN外設(shè),有的還支持兩個(gè)CAN。這里有CiA的積極推廣作用。
CANopen軟件優(yōu)勢(shì)?
CANopen主要有CiA在推廣,是非盈利組織,CANopen協(xié)議資料,網(wǎng)上一堆,任何人都可以下載到,我們常用的DS301(Draft Standand),DS402,CAN粉絲幾乎人手一本,猶如葵花寶典,一定要珍藏一本。
CANopen協(xié)議開(kāi)發(fā),開(kāi)源項(xiàng)目非常多,CanFestival就是其中一個(gè),我做過(guò)移植,在步科MT4414TE-CAN觸摸屏,用在8位單片機(jī)上,此源碼有點(diǎn)耗費(fèi)資源,網(wǎng)上有很多基于MCU的精簡(jiǎn)源碼。
開(kāi)發(fā)完整的CANopen協(xié)議棧,是一項(xiàng)很艱辛的工作,想要做好非常難。問(wèn)題的難點(diǎn)就在于你對(duì)CANopen協(xié)議的理解上,比如EMCY,復(fù)位節(jié)點(diǎn),是否需要“NO Initialization”,heartbeat,Node guard是否需要?如何處理?這條不能算是其優(yōu)點(diǎn)。
為什么如此多公司在推廣CANopen?
CANopen對(duì)于運(yùn)動(dòng)控制來(lái)說(shuō)是一款優(yōu)秀的通訊協(xié)議,采用了面向?qū)ο蟮囊恍┰O(shè)計(jì)思路,比如對(duì)象字典,過(guò)程數(shù)據(jù)對(duì)象(PDO),服務(wù)數(shù)據(jù)對(duì)象(SDO)等等。
CANopen在歐洲已成為普通的協(xié)議,任何一家自動(dòng)化公司都有CANopen的通訊接口,也成了低配。低配并不代表不好,只是說(shuō)明其性價(jià)比更高。CANopen定義了完整的同步控制機(jī)制,使其成為主流的運(yùn)動(dòng)控制協(xié)議,除了在CAN總線上運(yùn)行外,還被搬到了以太網(wǎng)上(CANopen over Ethernet),形成了著名的PowerLink,EtherCat工業(yè)以太網(wǎng)協(xié)議。
所謂的運(yùn)動(dòng)控制總線標(biāo)準(zhǔn),其實(shí)沒(méi)有多大意義,因?yàn)檫\(yùn)動(dòng)控制技術(shù)都掌握在各個(gè)廠商手里,每一個(gè)稍微大一點(diǎn)的廠商,都有自己的專用運(yùn)動(dòng)控制協(xié)議,比如三菱的SSCNET,安川的MECHATROLINK,倍福的CANOPEN以及EtherCat,施耐德的CANopen,西門子的SiMotion,貝加萊的PowerLink,博世力士樂(lè)的SERCOS。
由于CANopen(可以看DS402,伺服控制標(biāo)準(zhǔn))在運(yùn)動(dòng)控制的優(yōu)勢(shì),尤其是同步控制,不管哪個(gè)級(jí)別的廠商,在運(yùn)動(dòng)控制系統(tǒng)中,多多少少都加入了自己的東西,導(dǎo)致運(yùn)動(dòng)控制系統(tǒng)通常是封閉的,很少走互聯(lián)路線,事實(shí)上要做到互聯(lián)也非常困難。
二三流廠家,開(kāi)發(fā)自己的CANopen協(xié)議,會(huì)根據(jù)自己的需求,將其移至到不同的物理層上去運(yùn)行,形成自己的運(yùn)動(dòng)控制系統(tǒng),其性能優(yōu)劣就在于其對(duì)CANopen協(xié)議的理解程度了。
(原標(biāo)題:究竟是什么原因讓伺服控制中CANopen通訊這么火?)
所有評(píng)論僅代表網(wǎng)友意見(jiàn),與本站立場(chǎng)無(wú)關(guān)。