freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

can總線的淺析canopen協(xié)議-閱讀頁

2025-05-29 03:50本頁面
  

【正文】 O線程,說白了就是初始化SDO線程參數表,將收集的信息以特定格式放入參數表,形成一幀SDO請求,發(fā)送出去。如果在這個過程中,SDO server 和SDO client所在節(jié)點有收到其他節(jié)點的SDO請求或需要通過SDO請求其它節(jié)點,則新建SDO線程來實現,跟上面的步驟一樣,這樣就可以實現多個SDO server和SDO client服務都得到實現而互不干擾,相當于雙向多線鐵路,可比單線爽多了。因為OD的內容比較雜,讀寫屬性上,有只讀數據、只寫數據、可讀寫數據;保存要求上有非易失和掉電丟失兩種類型;數據類型上有字符型、整型、長整型等等;存儲格式上有8位、16位、32位等。有人會以為這還要討論么?只讀的就放在只讀存儲器中,可寫的就放在RAM中,需要掉電保存的就放在非易失可讀寫存儲器中。2. 可讀寫而又掉電保存的數據不能放在RAM里。4. 單片機資源有限,存取方式和讀寫速度有限值,因此得合理利用。自節(jié)點出廠就無需更改,例如,節(jié)點硬件序列號、軟硬件版本等。頻繁讀寫,掉電無需保存。3. 系統(tǒng)配置參數。基本上所有的OD對象都可以歸到這三類中去。實際上確實該如此安排,但是所有問題的解決了?NO,NO,NO!OD中的數據對象是怎么安排進存儲器的?系統(tǒng)啟動怎么初始化?怎么去訪問?下面提供一種方案:出廠設置隨程序一起寫入FLASH,然后系統(tǒng)重器開始運行,在軟件初始化過程中,程序將出廠默認的整個OD對象從FLASH 載入到RAM中去,不論是OD的那種分類的數據;之后如果判斷是第一次運行,將用RAM中屬于的統(tǒng)配置參數的那一類數據去初始化EEPROM,否則用EEPROM中的系統(tǒng)配置參數去重新覆蓋對應的RAM映像。最后要注意一點就是OD的對象屬性等信息一定要放在FLASH中,否則將是一個極大的RAM開銷。明顯的優(yōu)點也意味著明顯的缺點,就是占用較多RAM空間,只讀數據和非易失性數據都要映射到RAM中,浪費了一部分RAM,這將使得本來就緊張的RAM資源更加緊張,好在一般節(jié)點上的OD內容一般不多,而且現在RAM非常便宜。對象字典0x1005和0x1006的理解SYNC不一定由主站產生,因此,產生SYNC的節(jié)點,0x1005對象的值一般是0x40000080,第30位為1表示本節(jié)點產生SYNC,而本節(jié)點的0x1006對象就是產生同步周期值了。屬于主從式服務,類似于NMT的方式,占用2021(for master)和2020(for slave)兩個標識符。網絡上的其他節(jié)點都提供LSS Slave服務。一般要求LSS Master節(jié)點要預先知道網絡上的各節(jié)點的LSS地址。2. 然后通過’Configure NodeID’服務設置其節(jié)點地址。不是很困難吧。2. 通過’Configure Bit Timing Parameters’服務將波特率廣播到每個節(jié)點中。將整個網絡波特率切換為新設置。這里要注意:在‘Activate Bit Timing Parameters’服務中有個switch_delay參數,該參數指定相等長度的兩個延遲周期長度,是為了避免總線上出現不同的位定時參數(波特率)。在應用新參數后,節(jié)點在第二個’switch_delay’毫秒定時到之前不發(fā)送任何報文。意思就是某個節(jié)點在處理延時的過程中可能還會以舊的波特率來傳輸CAN報文。在第一次經過switch_delay指定的時間長度后,每個節(jié)點必須在第二個switch_delay期間完成到新波特率的切換。至于LSS提供的LSS地址查詢等功能這里就不介紹了。其優(yōu)先級只比心跳(Heartbeat)高。SDO請求和應答報文都是8個字節(jié)的數據,其中包括對象字典的索引、子索引、SDO命令和數據。CANopen協(xié)議中SYNC功能和使用SYNC是CANopen管理各節(jié)點同步數據收發(fā)的一種方法,相當于網絡節(jié)拍,基于同步的PDO按照這個網絡節(jié)拍來執(zhí)行實時數據的收發(fā)。SYNC生產者按照固定頻率發(fā)送SYNC報文,需要SYNC的節(jié)點(消費者)將其接收并計數,當計數值達到節(jié)點相應TPDO要求時,該TPDO映射的數據被發(fā)送(根據PDO傳輸類型也可能是映射數據更新),此過程中SYNC生產者提供網絡節(jié)拍,各消費者以節(jié)拍周期的倍數執(zhí)行數據傳輸功能。2. SYNC是不帶數據的,以使報文盡可能短,目的是為了加快其傳輸,減少網絡占用。CANopen協(xié)議PDO的幾種傳輸方式由于PDO所傳輸的數據內容是無協(xié)議的且分配的標識符范圍較SDO靠前,因此,其效率和優(yōu)先級都是較高的,通常用于實時過程數據的傳輸.PDO是生產/消費類型的通訊方式,數據只有一個生產者(發(fā)送),但是消費者(接收)可以有多個,生產者和消費者事先都已知道數據的類型和內容(通過設置PDO映射來管理).對PDO通訊參數的設置可以實現四種通訊方式:1. ,可以定義收到幾個SYNC后觸發(fā)一次TPDO,在有SYNC的CANopen網絡中,SYNC就相當于一個網絡節(jié)拍,一個溫度傳感器,一個物位傳感器,網絡中有一個HMI監(jiān)控終端來實時監(jiān)控三個傳感器采集的數據,壓力傳感器可能檢測的是一個快速的壓力變化,那可以每隔200mS更新一次數據,溫度可能需要1S更新一次數據,物位可能5S更新一次數據,(假設各傳感器的數據采集周期都比數據更新周期小,如果大的話數據更新快可能沒有意義,呵呵)現在我可以設置一個200mS周期的SYNC消息,壓力傳感器每收到一個SYNC就向HMI傳輸一次數據,溫度傳感器可以每隔5個SYNC傳輸一次數據,好管理,系統(tǒng)運行效率高,適合周期性數據更新的應用.2. ,我發(fā)一個遠程數據請求過去,對方在接收到請求后,把我要的數據給發(fā)過來,這種方式是在我需要的時候去主動獲取.3. ,它是在本節(jié)點實現周期發(fā)送,通過設置PDO參數,定一個周期,每隔固定的時間向網絡上發(fā)送一次PDO,它與SYNC無關,在網絡設計中主要按照傳感器的數據采集速度和數據更新要求來設定定時周期.4. ,例如當某個接著報警開關的開關量采集節(jié)點的報警狀態(tài)發(fā)生變化時,觸發(fā)一次PDO將報警狀態(tài)發(fā)送到網絡上,特別適合系統(tǒng)運行出錯報警和重大事件的及時處理上.上面的幾種傳輸方式各有所長,在CANopen網絡的設計中,按照不同的應用靈活配合使用才能構建一個優(yōu)秀的解決方案.參考鏈
點擊復制文檔內容
規(guī)章制度相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1