CANOpen協議如何保證通訊不丟幀?

2021-01-11 電子產品世界

摘要:如何讓現場總線通訊更加穩定可靠,不丟失,這向來都是工程師們難以解決的問題。本文將運用國際規範的通訊協議來展示怎樣才能搭建好握手通訊。

本文引用地址:http://www.eepw.com.cn/article/201706/352577.htm


服務數據對象SDO(Service data object)
SDO主要用於CANopen主站對從節點的參數配置。服務確認是SDO的最大的特點,為每個消息都生成一個應答,確保數據傳輸的準確性。如圖 1所示,這就像快遞,需要收方籤收後,給寄方發送一個已經籤收的確認才算完成一次投遞。

圖 1 SDO與快遞籤收

在一個CANopen系統中,通常CANopen從節點作為SDO伺服器,CANopen主節點作為客戶端(稱為CS通訊)。SDO客戶端通過索引和子索引,能夠訪問SDO伺服器上的對象字典。這樣CANopen主節點可以訪問從節點的任意對象字典項的參數,並且SDO也可以傳輸任何長度的數據(當數據長度超過4個字節時就拆分成多個報文來傳輸)。


通訊原則(communication principle)
SDO的通訊原則非常單一,發送方(客戶端)發送CAN-ID為600h+Node-ID的報文,其中Node-ID為接收方(伺服器)的節點地址,數據長度均為8位元組;
接收方(伺服器)成功接收後,回應CAN-ID為580h+Node-ID的報文。這裡的Node-ID依然是接收方(伺服器)的節點地址,數據長度均為8位元組。如圖 2所示。

圖 2 SDO通訊原則

快速SDO協議(Expedited SDO protocol)
最常用最常見的SDO協議是快速SDO,所謂快速,就是1次來回就搞定。前提是讀取和寫入的值不能大於32位。如圖 3所示,為快速SDO協議的示意圖。命令中直接包含了要讀寫的索引、子索引、數據。可謂直接命中。

快速SDO的難點在於CS命令符的記憶,需要讀者收藏這個示意圖。

圖 3 快速SDO示意圖

通過快速SDO,可以直接對CANopen節點的對象字典中的值進行讀取和修改,所以在做參數配置之外,也經常作為關鍵性數據傳輸之用。比如CANopen控制機器人的電機轉動角度時,就使用SDO來傳輸,保證可靠到達。


普通SDO協議(Normal SDO protocol)
當需要傳輸的值超過32位時,就不能使用快速SDO傳輸。必須使用普通SDO進行分幀傳輸。在應用中較少用到,一般用於CANopen節點的程序固件升級,或者做網關轉換MVB總線之類數據最大可達256位的應用。


普通SDO協議難點在於分包邏輯與CS命令符的變化。依然難以記憶,需要讀者將以下示意圖進行收藏。


當然普通SDO的CAN幀ID與快速SDO相同,依然發送方(客戶端)發送的報文CAN-ID為600h+Node-ID,接收方(伺服器)成功接收後,回應CAN-ID為580h+Node-ID的報文。


下載協議download protocol 如圖 4所示。

圖 4 普通SDO下載協議

上傳協議upload protocol 如圖 5所示。

圖 5 普通SDO上傳協議


相關焦點

  • S7 通訊協議是什麼
    S7 協議是 SIEMENS S7 系列產品之間通訊使用的標準協議,其優點是通信雙方無論是在同一 MPI 總線上、同一PROFIBUS 總線上或同一工業乙太網中,都可通過 S7 協議建立通信連接,使用相同的編程方式進行數據交換而與使用何種總線或網絡無關。
  • 西門子 PLC 幾種常見的連接口和通訊協議
    1個收發器,不能支持多站收發能力,所以只能點對點通信,不支持多點通訊。PPI協議物理上基於RS-485口,通過屏蔽雙絞線就可以實現PPI通訊。PPI協議是一種主-從協議。主站設備發送要求到從站設備,從站設備響應,從站不能主動發出信息。主站靠PPI協議管理的共享連接來與從站通訊。PPI協議並不限制與任意一個從站的通訊的主站的數量,但在一個網絡中,主站不能超過32個。
  • 物聯網架構各個層次使用的是什麼通訊協議
    物聯網架構各個層次使用的是什麼通訊協議 物聯網共享經濟資 發表於 2020-03-18 15:42:41 如下圖所示,本文從以下幾個維度對物聯網常見的幾種協議進行闡述
  • CAN總線及CAN通訊協議
    最初,CAN被設計作為汽車環境中的微控制器通訊,在車載各電子控制裝置ECU之間交換信息,形成汽車電子控制網絡。比如:發動機管理系統、變速箱控制器、儀表裝備、電子主幹系統中,均嵌入CAN控制裝置。 CAN通訊協議主要描述設備之間的信息傳遞方式。CAN層的定義與開放系統互連模型(OSI)一致。每一層與另一設備上相同的那一層通訊。實際的通訊發生在每一設備上相鄰的兩層,而設備只通過模型物理層的物理介質互連。CAN的規範定義了模型的最下面兩層:數據鏈路層和物理層。
  • PLC幾種常見的連接口和通訊協議,你知道有哪些?
    :RS232接口在總線上只允許連接1個收發器,不能支持多站收發能力,所以只能點對點通信,不支持多點通訊。s7-200系列plc開發的通訊協議。PPI協議物理上基於RS-485口,通過屏蔽雙絞線就可以實現PPI通訊。PPI協議是一種主-從協議。主站設備發送要求到從站設備,從站設備響應,從站不能主動發出信息。主站靠PPI協議管理的共享連接來與從站通訊。PPI協議並不限制與任意一個從站的通訊的主站的數量,但在一個網絡中,主站不能超過32個。
  • 你知道PLC有幾種常見的連接口和通訊協議嗎?
    四、能否支持多點通訊 RS232:RS232接口在總線上只允許連接1個收發器,不能支持多站收發能力,所以只能點對點通信,不支持多點通訊。PPI協議物理上基於RS-485口,通過屏蔽雙絞線就可以實現PPI通訊。PPI協議是一種主-從協議。主站設備發送要求到從站設備,從站設備響應,從站不能主動發出信息。主站靠PPI協議管理的共享連接來與從站通訊。PPI協議並不限制與任意一個從站的通訊的主站的數量,但在一個網絡中,主站不能超過32個。
  • 樓宇自控系統的主流通訊協議有哪些
    那麼,樓宇自控系統的主流通訊協議有哪些呢?帶著這個問題跟著小編往下看看吧! 關於樓宇自控系統我們並不陌生,但其實樓宇自控系統是有個主流通訊協議的。
  • Web端即時通訊實踐乾貨:如何讓WebSocket斷網重連更快速?
    一旦感知到了連接不可用,那便可以棄舊圖新了,棄用並斷開舊連接,然後發起一次新連接。這兩個步驟看似簡單,但若想達到快,且不是那麼容易的。首先:是斷開舊連接,對客戶端來說,如何快速斷開?協議規定客戶端必須要和伺服器協商後才能斷開WebSocket連接,但是當客戶端已經聯繫不上伺服器、無法協商時,如何斷開並快速恢復?其次:是快速發起新連接。
  • 圖解通訊變遷史:我們是如何被「電話」馴化的?
    從通訊再到智能化通訊,發展的腳步不曾停歇。當智能化通訊逐漸深入到企業應用領域時,未來企業又會發展為怎樣的呢?當代人類,已經成了被技術馴化的物種。在一系列我們離不開的技術中,通訊就是其中的典型。餵飽我們的外賣,賴以為生的工作,戀人之間的親密耳語,無一不依賴通訊技術而成立。
  • 有為通訊與北方聯星籤署戰略合作協議
    深圳有為通訊科技有限公司北鬥領航創始人蘇剛受邀出席活動,與全球衛星導航領域企業精英和專家學者,共同交流探討衛星導航技術創新應用發展。據了解,本屆大會以「衛星導航,全球新時代」為主題,致力於推動衛星導航系統與地理信息產業、網際網路、人工智慧、現代通信、行業信息化等方面的深度融合,促進導航技術成果轉移轉化,打造成果展示和應用推廣的服務平臺。
  • RS485通訊基礎及通訊應用詳解
    導讀 要搞清楚RS485通訊我們要先搞明白什麼是通訊,通訊就是兩個設備之間0、1代碼的傳遞,0-低電平,1-高電平。
  • 關於物聯網行業通信協議一接入協議
    二、近距離通信協議:  2.1、RFID  1、RFID簡介  RFID的空中接口通信協議規範基本決定了RFID的工作類型,RFID讀寫器和相應類型RFID標籤之間的通訊規則,包括:頻率、調製、位編碼及命令集。
  • 深度介紹rs485總線接口通訊協議定義標準以及管腳引腳
    本文引用地址:http://www.eepw.com.cn/article/201808/385592.htmRS485通信網絡接口是一種總線式的結構,上位機(以個人電腦為例)和下位機(以51系列單片機http://www.51hei.com為例)都掛在通信總線上,RS485物理層的通信協議由RS485標準和51單片機的多機通訊方式。
  • Kvaser 汽車CAN通訊協議總線分析儀新手入門問題解決...
    Kvaser 汽車CAN通訊協議總線分析儀新手入門問題解決方案教程 發表於 2020-03-30 14:31:16 1、驅動安裝問題      答:驅動程序安裝問題通常是由防病毒軟體引起的
  • 工業物聯網協議有哪些新技術的加成
    用於製程控制統一架構的對象連結和嵌入(OPC UA)是一種新興的基於乙太網絡的協議,可處理工業製程數據、警報、事件和歷史數據之間的通訊。它是一種中立的平臺,具有內建的安全性,能夠支持自主和智能的系統。透過這些特性,它提供了一個用於開放的、與供貨商無關的通訊平臺,在控制器層面將可編程邏輯控制器(PLC)、傳感器數據與SCADA系統、MES、ERP和雲端連接在一起。
  • 天線方向圖如何影響通訊距離?
    在通訊系統中,收發天線的方向圖直接決定了無線信號的覆蓋區域,最理想的方式是收發天線都處於其其最大的輻射面上,隨著遠離其最大的輻射面,天線的增益會逐漸下降,必須讓其互相處於其半功率波瓣寬度內,不然會嚴重影響通訊質量。
  • 基於Modbus協議和力控組態軟體實現空氣壓縮機監控系統的改造設計
    控制系統間的通訊是改造過程中的難點,本文介紹了採用Modbus通訊協議實現上述通訊的方法,採用力控組態軟體開發了空氣壓縮機監控系統,實現了空氣壓縮機組的智能化控制,使得空氣壓縮機運轉穩定、可靠、精度高、維護方便,而且保證了礦區的安全生產,具有直接的經濟效益。
  • 如何做論文的通訊作者?
    作者:王善勇教授大家都知道,論文的通訊作者對一篇論文來講是最重要的。論文出任何問題,首先找的就是通訊作者。那麼如何做好一個合格的通訊作者呢?01.就一個課題組來講,通訊作者通常是導師。一篇文章的idea可能主要來自導師。
  • 異步串行通信協議的設計與實現
    如何設置取決於具體 需求;停止位用於表示單個包的最後一位,典型值為1,1.5 和2位,停止位不僅僅表示傳輸的結束,還能提供計算機校 正時鐘同步的機會;奇偶校驗位是串口通信中一種簡單的檢 錯方式,有四種檢錯方式——偶、奇、高和低,也可以沒有 校驗位。
  • 中興通訊:積極參與RCS國際標準和技術協議的討論與制定
    同花順(300033)金融研究中心12月28日訊,有投資者向中興通訊(000063)提問, 4月8日10點,中國移動將與中國電信、中國聯通聯合發布5G消息白皮書,5G消息白皮書發布在即,傳統簡訊將迎來大變局,5G消息,即RCS消息,它讓我們可以在簡訊界面上,實現APP的各類豐富應用,將取代幾乎所有手機APP