can匯流排編程
『壹』 can匯流排編程需要注意些什麼
1.正確的初始化,比如時間特性,波特率,工作模式等。
2.過濾器設置,高小器的編號,過濾器寬度以及過濾器的過濾模式還有過濾器標准值設置等。
3.發送/接收數據的方式有查詢方式和中斷方式,個人建議發送使用查詢方式,接收使用中斷方式。
『貳』 如何進行汽車 CAN 匯流排開發
首先,請看這份恆潤工程師寫的論文《CAN匯流排系統測試技術》。
裡面基本描述了CAN匯流排開發的流程,但主要側重於CAN匯流排的測試,不過也能讓你有所了解。
根據你的描述,假設你的要求是:能夠基於某嵌入式平台(最好該平台在汽車ECU開發中被廣泛使用),根據給定的通信協議(一般由通信矩陣描述),編寫CAN介面代碼,並能通過相關設備進行簡單測試。
推薦的學習步驟為:
1. 了解CAN基本知識
可以通過這個ppt,恆潤的東西還是不錯的。
CAN基礎_網路文庫
2. 直觀的了解CAN
這需要你購買或借用CAN匯流排檢測設備,檔次差很多。如果是你自己想玩,可以買個周立功的USB轉CAN,淘寶也就幾百塊錢。如果是課題組采購,可以買個Kvaser的USBCAN,幾千塊吧。大致這個樣子。
要是土豪的話,可以買Vector的VN1600,這個就好幾萬了。以上三種我都用過。一定要買雙通道,然後一個口發,一個口接,可以自己接延長線通過示波器看信號了。嘗試修改報文ID,數據,波特率等等,看示波器的變化,對理解第一部分的內容很有幫助
3. 選擇嵌入式平台,學習CAN介面的編程
飛思卡爾MC9S08DZ60MLH 8位汽車級CAN匯流排 開發板 學習板超
可以選擇這個小板子練習一下,程序的寫法都是差不多的。然後和第二部分的匯流排檢測設備連在一起進行測試。
這一步需要詳細了解信號轉換的知識,特別是Big Endian和Little Endian的區別,factor和offset的作用,如何置1或置0,可以參考DBC_File_Format_DocumentaTIon_網路文庫,很詳細,看完就懂了。
4. 如果有興趣,可以看看J1939協議(用於商用車)或者CANOpen協議(用於現場控制,很多電機控制器使用)或者ISO 15031-5(用於OBD診斷)。
最後,希望你在了解CAN以後,不要花過多的精力在底層上,基本都是體力勞動。體現價值的還得是上層。請看看一汽技術中心的相關招聘要求:
工作職責
1.設計新能源汽車網路拓撲和制定網路技術需求;
2.制定新能源汽車網路通信需求、網路通信矩陣和網路資料庫;
3.設計和開發新能源汽車網路通信協議模擬試驗、網路通信規范、網路線束規范;
4.設計新能源汽車網關控制器及具有相同網路通信功能的介面控制器產品定義與技術規范;
5.負責新能源汽車電子電氣開發過程中的問題解決,配合生產和售後服務。來源:知乎 作者:Wang Yu
『叄』 問問can匯流排plc的編程語言可分為哪些種類呢
感謝題主的邀請,我來說下我的看法:
不管是CAN匯流排PLC,還是其他種類的PLC,它們都是可編程邏輯控制器,其精髓都在於可以通過編程語言改變自身的控製程序。常見的PLC編程語言有五種,分別為:
1、梯形圖
2、順序功能圖
3、結構化文本
4、指令表
5、功能區塊圖
其中,梯形圖的應用更為常見,更適合新手學習。現在你清楚了嗎?如果您需要相關的CAN匯流排PLC的話,可以前往我們的網站進行具體的咨詢,歡迎來訪。
『肆』 plc接收CAN匯流排上的信息,程序怎麼寫
plc接收CAN匯流排上的信息,可以配置成CANopen基本協議進行9針口程序編寫。
CAN協議用於汽車中各種不同元件之間的通信,以此取代昂貴而笨重的配電線束。該協議的健壯性使其用途延伸到其他自動化和工業應用。
CAN協議的特性包括完整性的串列數據通訊、提供實時支持、傳輸速率高達1Mb/s、同時具有11位的定址以及檢錯能力。
CAN匯流排使用串列數據傳輸方式,可以1Mb/s的速率在40m的雙絞線上運行,也可以使用光纜連接,而且在這種匯流排上匯流排協議支持多主控制器。
(4)can匯流排編程擴展閱讀:
CAN協議匯流排的工作原理:
CAN與I2C匯流排的許多細節很類似,但也有一些明顯的區別。當CAN匯流排上的一個節點(站)發送數據時,它以報文形式廣播給網路中所有節點。對每個節點來說,無論數據是否是發給自己的,都對其進行接收。
每組報文開頭的11位字元為標識符,定義了報文的優先順序,這種報文格式稱為面向內容的編址方案。
在同一系統中標識符是唯一的,不可能有兩個站發送具有相同標識符的報文。當幾個站同時競爭匯流排讀取時,這種配置十分重要。
『伍』 請問帶can匯流排的plc如何與CAN IO搭配使用呢
感謝題主的邀請,我來說下我的看法:
盡管都帶有CAN匯流排介面,身上也都有若干個IO介面,但CAN匯流排PLC與CAN匯流排IO到底是兩種設備,其最大的區別就在於PLC可以通過編程語言改變自身的內部控製程序,CAN IO設備的控製程序是寫死的,無法改變的。相對比而言,PLC是可以充當主站使用的,而CAN IO只能當從站,它必須接收主站設備的命令才能工作。那麼,我們如果想要搭配使用CAN匯流排PLC與CAN 匯流排IO的話,我們就應該使用PLC控制CAN匯流排 IO,彼此使用CAN匯流排連通CAN通訊介面,PLC作為CAN匯流排IO的上位機,你清楚了嗎?如果您需要相關設備的話,可以前往我們的網站進行具體的咨詢,歡迎來訪。
『陸』 CAN匯流排多節點編程問題:
1.自帶Can控制器的那就在主控晶元編程
2.不帶Can控制器的話,應該是獨立的Can控制器+主控晶元才能組成一個節點
3.物理層的話還需要Can匯流排驅動,用來變換電平。
4.MCU+CAN控制器+CAN驅動器可以組成一個節點。
『柒』 問下can匯流排 io設備能通過編程軟體改變控製程序嗎
感謝題主的邀請,我來說下我的看法:
題目中所說的設備應該是匯流排IO控制器,一般這類設備的所有程序都是被寫死了的,無法通過編程軟體再進行改變。相對應的,PLC這種控制器就可以通過編程軟體改變自身的控制內容,靈活性更高。具體選擇哪一種工業控制器,您還是要根據實際情況進行抉擇,如果您是那種拿來設備就想用,不會進行編程的人員,那您就選擇匯流排IO控制器。如果不是上一種情況,我們還是建議您用PLC實現目的,您覺得呢?如果您需要相關的工業控制器,可以前往我們的網站進行具體的咨詢,歡迎來訪。
『捌』 請問can匯流排 plc都可以使用哪幾類編程語言呢
感謝題主的邀請,我來說下我的看法:
PLC支持幾種編程語言和它是不是CAN匯流排介面其實沒什麼太大的關系,主要是看設備在當初設計的時候被沒被賦予相應的能力。一般PLC的編程語言有五種,分別為:
1、順序功能圖
2、梯形圖
3、功能塊
4、結構化文本
5、指令表
雖然PLC支持編程語言的種類數目和支不支持CAN通訊沒什麼關聯,但可以通過CAN匯流排通訊的PLC顯然比只能通過串口匯流排通訊的PLC更加具有工作效率,這是毋庸置疑的。如果你需要能夠支持五種編程語言的CAN匯流排PLC的話,可以前往我們的網站進行具體的咨詢,歡迎來訪。
『玖』 問下帶有can匯流排的plc怎麼更改程序呢
感謝題主的邀請,我來說下我的看法:
不管是是用CAN匯流排控制的PLC,還是用串口匯流排控制的PLC,只要它們叫PLC,那就需要通過專門的編程語言去改變控制內容。當然,我們不可能通過CAN匯流排介面讓PLC與電腦相連,都是通過USB實現設備與電腦之間的物理連接的。然後,我們就可以根據自己的需要選擇恰當的編程語言進行PLC控製程序的修改了。常見的PLC編程語言有梯形圖,功能塊,順序功能圖等等,現在你清楚了嗎?如果您需要相關的CAN介面PLC的話,可以前往我們的網站進行具體的咨詢,歡迎來訪。