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

正文內(nèi)容

can總線(xiàn)的淺析canopen協(xié)議-在線(xiàn)瀏覽

2025-07-01 03:50本頁(yè)面
  

【正文】 發(fā)展基于CAN的高層應(yīng)用協(xié)議,只用在應(yīng)用層上,不同公司的產(chǎn)品才可能實(shí)現(xiàn)互操作,好的應(yīng)用層協(xié)議更可以為用戶(hù)帶來(lái)系統(tǒng)性能的飛躍。其中,比較著名的有美國(guó)汽車(chē)工程師協(xié)會(huì)(SAE)制定的車(chē)內(nèi)通信規(guī)范J1939等。為了能夠把CAN推廣到更多的領(lǐng)域,歐洲一些公司推出了CAL(應(yīng)用層CAN)協(xié)議,盡管CAL在理論上正確,并在工業(yè)上可以投入應(yīng)用,但每個(gè)用戶(hù)都必須設(shè)計(jì)一個(gè)新的子協(xié)議,因?yàn)镃AL 是一個(gè)真正的應(yīng)用層協(xié)議。從1993 年起,由Bosch公司領(lǐng)導(dǎo)的一個(gè)歐洲機(jī)構(gòu)研究出一個(gè)協(xié)議原型,由此發(fā)展成為CANopen規(guī)范。在CANopen規(guī)范基本完成之后,Bosch將其移交給CIA組織,由其進(jìn)行維護(hù)與發(fā)展。 CANopen 不僅定義了應(yīng)用層和通信子協(xié)議,而且為可編程系統(tǒng)、不同器件、接口、應(yīng)用子協(xié)議定義了大量的行規(guī),遵循這些行規(guī)開(kāi)發(fā)出的CANopen設(shè)備將能夠?qū)崿F(xiàn)不同公司產(chǎn)品間的互操作。CANopen目前已在汽車(chē)工業(yè)控制系統(tǒng),公共交通運(yùn)輸系統(tǒng),醫(yī)療設(shè)備,海運(yùn)電子設(shè)備和建筑自動(dòng)化系統(tǒng)中取得了廣泛的應(yīng)用,是將CAN應(yīng)用推向深化的理想選擇。在CANopen的應(yīng)用層,設(shè)備間通過(guò)相互交換通信對(duì)象進(jìn)行通信。 CANopen設(shè)備模型 一個(gè)CANopen設(shè)備模塊可以被分為3部分,如圖2所示。不同CANopen設(shè)備間的通信都是通過(guò)交換通信對(duì)象完成的。 對(duì)象字典描述了設(shè)備使用的所有的數(shù)據(jù)類(lèi)型,通信對(duì)象和應(yīng)用對(duì)象。對(duì)象字典位于通信程序和應(yīng)用程序之間,向應(yīng)用程序提供接口,應(yīng)用程序?qū)?duì)象字典進(jìn)行操作就可以實(shí)現(xiàn)CANopen通信。 應(yīng)用程序由用戶(hù)編寫(xiě),包括功能部分和通信部分。 CANopen網(wǎng)絡(luò)的通信和管理都是通過(guò)不同的通信對(duì)象來(lái)完成的,為了能夠?qū)崿F(xiàn)通信,網(wǎng)絡(luò)管理,緊急情況處理等功能,CANopen規(guī)范定義了四類(lèi)標(biāo)準(zhǔn)的通信對(duì)象: PDO被映射到單一的CAN幀中,使用所有的8個(gè)字節(jié)的數(shù)據(jù)域來(lái)傳輸應(yīng)用對(duì)象。PDO可以通過(guò)多種模式傳送,內(nèi)部事件,外部時(shí)鐘,遠(yuǎn)程幀請(qǐng)求以及從特定節(jié)點(diǎn)接收到同步報(bào)文都可以啟動(dòng)PDO發(fā)送。服務(wù)數(shù)據(jù)對(duì)象(SDO) 第二類(lèi)通信對(duì)象為服務(wù)數(shù)據(jù)對(duì)象,該對(duì)象可以傳輸大于8個(gè)字節(jié)的配置信息。接收者將確認(rèn)收到的每個(gè)段信息,發(fā)送和接收者間將建立點(diǎn)對(duì)點(diǎn)的通信,稱(chēng)之為客戶(hù)機(jī)/服務(wù)器模式。 節(jié)點(diǎn)警戒對(duì)象是由NMT主節(jié)點(diǎn)遠(yuǎn)程請(qǐng)求發(fā)送的帶有1字節(jié)數(shù)據(jù)的CAN幀,一個(gè)字節(jié)的數(shù)據(jù)中包含1個(gè)觸發(fā)位以及7個(gè)用于表示節(jié)點(diǎn)狀態(tài)的數(shù)據(jù)位。發(fā)送周期(警戒時(shí)間)的長(zhǎng)度在對(duì)象字典中規(guī)定并且可以通過(guò)SDO進(jìn)行配置。這種機(jī)制保證了即使NMT主節(jié)點(diǎn)不在了,系統(tǒng)中的其他節(jié)點(diǎn)也可以通過(guò)用戶(hù)定義的方式進(jìn)行回應(yīng)。特殊功能對(duì)象 CANopen還為同步,緊急狀態(tài)表示以及時(shí)間標(biāo)記傳送定義了三個(gè)特定的對(duì)象。當(dāng)設(shè)備發(fā)生嚴(yán)重的內(nèi)部錯(cuò)誤時(shí),相關(guān)的一個(gè)緊急狀態(tài)客戶(hù)機(jī)將發(fā)送一個(gè)緊急狀態(tài)對(duì)象。 要理解CANopen規(guī)范,核心是要理解CANopen的設(shè)備模型和各類(lèi)型的通信對(duì)象。 展望 最近一段時(shí)期,國(guó)內(nèi)開(kāi)發(fā)、應(yīng)用CAN系統(tǒng)的人員正在逐漸增多,對(duì)CAN協(xié)議的研究也在不斷加深。電力,航天等部門(mén)也在CAN方面取得了不小的應(yīng)用成績(jī)。另外,國(guó)內(nèi)研究、開(kāi)發(fā)CAN協(xié)議,尤其是CAN高層協(xié)議的組織和人員還太少,這對(duì)CAN在中國(guó)的推廣是十分不利的,筆者誠(chéng)切希望更多的有識(shí)之士能夠加入這一行列。一、CANopen協(xié)議中SYNC功能和使用 SYNC是CANopen管理各節(jié)點(diǎn)同步數(shù)據(jù)收發(fā)的一種方法,相當(dāng)于網(wǎng)絡(luò)節(jié)拍,基于同步的PDO按照這個(gè)網(wǎng)絡(luò)節(jié)拍來(lái)執(zhí)行實(shí)時(shí)數(shù)據(jù)的收發(fā)。SYNC生產(chǎn)者按照固定頻率發(fā)送SYNC報(bào)文,需要SYNC的節(jié)點(diǎn)(消費(fèi)者)將其接收并計(jì)數(shù),當(dāng)計(jì)數(shù)值達(dá)到節(jié)點(diǎn)相應(yīng)TPDO要求時(shí),該TPDO映射的數(shù)據(jù)被發(fā)送(根據(jù)PDO傳輸類(lèi)型也可能是映射數(shù)據(jù)更新),此過(guò)程中SYNC生產(chǎn)者提供網(wǎng)絡(luò)節(jié)拍,各消費(fèi)者以節(jié)拍周期的倍數(shù)執(zhí)行數(shù)據(jù)傳輸功能。2. SYNC是不帶數(shù)據(jù)的,以使報(bào)文盡可能短,目的是為了加快其傳輸,減少網(wǎng)絡(luò)占用。其優(yōu)先級(jí)只比心跳(Heartbeat)高。SDO請(qǐng)求和應(yīng)答報(bào)文都是8個(gè)字節(jié)的數(shù)據(jù),其中包括對(duì)象字典的索引、子索引、SDO命令和數(shù)據(jù)。 四、怎樣實(shí)現(xiàn)SDO服務(wù) SDO是CANopen協(xié)議中最復(fù)雜的一部分,帶有應(yīng)答機(jī)制,有多種傳輸方式,并且完整的SDO功能節(jié)點(diǎn)需提供1個(gè)SDO server和多個(gè)SDO client,因此SDO的實(shí)現(xiàn)異常困難,協(xié)議多種傳輸方式的解析處理還有跡可循,多個(gè)SDO client服務(wù)和多個(gè)對(duì)SDO server的訪問(wèn)的協(xié)調(diào)就不容易了,這里介紹一種方法——SDO線(xiàn)程來(lái)解決。我們這里的SDO線(xiàn)程只是借鑒了操作系統(tǒng)多線(xiàn)程機(jī)制的一套SDO服務(wù)處理方法,每個(gè)SDO線(xiàn)程表示的是與網(wǎng)絡(luò)上其他節(jié)點(diǎn)建立的一個(gè)SDO鏈接,相當(dāng)于在兩個(gè)節(jié)點(diǎn)間建立一個(gè)SDO通訊路徑,其中每個(gè)節(jié)點(diǎn)都擁有一個(gè)對(duì)這個(gè)路徑的描述,在該節(jié)點(diǎn)看來(lái)好像建立了一個(gè)線(xiàn)程來(lái)負(fù)責(zé)這個(gè)路徑(但決不會(huì)真的創(chuàng)建一個(gè)系統(tǒng)線(xiàn)程),在通訊過(guò)程中雙方通過(guò)這個(gè)路徑來(lái)交流,SDO通訊結(jié)束則釋放該線(xiàn)程,每個(gè)節(jié)點(diǎn)可以同時(shí)與多個(gè)節(jié)點(diǎn)建立多個(gè)這樣的路徑和互不影響,就如同操作系統(tǒng)的線(xiàn)程機(jī)制一樣的效果。SDO線(xiàn)程參數(shù)表可以說(shuō)是SDO線(xiàn)程的核心,所有SDO線(xiàn)程的建立、刪除和SDO通訊都要涉及到這個(gè)參數(shù)表。一次SDO訪問(wèn)是這樣完成的。SDO服務(wù)節(jié)點(diǎn)(SDO server)收到這幀請(qǐng)求,為它建立一個(gè)SDO線(xiàn)程,將這幀請(qǐng)求分析分解以獲得足夠信息來(lái)初始化這個(gè)SDO線(xiàn)程對(duì)應(yīng)的參數(shù)表,然后程序就會(huì)按照參數(shù)表的描述去執(zhí)行server的功能收集數(shù)據(jù)來(lái)滿(mǎn)足這個(gè)SDO請(qǐng)求,然后將收集到的數(shù)據(jù)形成SDO應(yīng)答幀返回給SDO client,如果此次請(qǐng)求結(jié)束則釋放該線(xiàn)程,否則等待下一幀請(qǐng)求到來(lái);SDO client在收到應(yīng)答后判斷該請(qǐng)求是否還有后續(xù)請(qǐng)求,無(wú)則釋放此SDO線(xiàn)程。該方法已在單片機(jī)下實(shí)現(xiàn),效果還不錯(cuò)。注意,這里的線(xiàn)程可不是操作系統(tǒng)提供的多線(xiàn)程技術(shù),況且為保證協(xié)議棧良好的移植性,在CANopen協(xié)議棧核心代碼里中也不好去調(diào)與操作系統(tǒng)相關(guān)的庫(kù)函數(shù)。我們知道每建立一個(gè)線(xiàn)程都會(huì)生成一個(gè)描述線(xiàn)程屬性的參數(shù)表和一些私有數(shù)據(jù),類(lèi)似的,SDO線(xiàn)程的建立也會(huì)初始化一個(gè)對(duì)應(yīng)的參數(shù)和數(shù)據(jù)結(jié)構(gòu)體——SDO線(xiàn)程參數(shù)表,以之來(lái)描述這個(gè)SDO鏈接的屬性并提供私有通訊數(shù)據(jù)的存儲(chǔ)。參數(shù)表內(nèi)容包括能夠描述一個(gè)SDO訪問(wèn)過(guò)程的所有參數(shù),這里不詳述。首先SDO發(fā)起節(jié)點(diǎn)(SDO client)收集足夠的信息,建立一個(gè)SD
點(diǎn)擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1