數字示波器CAN節點標定

2021-08-14 16:28:38 字數 1907 閱讀 7012

can通訊有錯誤幀,丟包,波特率不匹配等問題。通過stm32可以返回出填充錯誤,**位錯誤,應答錯誤等問題。但是面對錯誤無能為力。通過示波器又無法直**出錯誤幀在**。

看了廣東致遠電子的can節點測試與標定方案.pdf感覺非常有啟發。對於can節點的測試,文件中和網上的資料比較相似,主要可以分為以下幾點:

* 位寬度容忍測試(波特率波動)

* 報文壓力測試(大資料量負載情況)

* 錯誤波特率壓力測試(錯誤波特率)

* 抗干擾能力測試(在高強度干擾)

* 匯流排短路測試

* 匯流排斷路測試

* 容抗增加壓力測試(適應的容抗最高值)

* 匯流排網路阻抗測試(適應的阻抗最高值)

* 對正負電源或地短路(對正負電源或者地短路)

* 終端電阻變化壓力測試等(終端電阻範圍)

通過一般的can分析儀比較難以進行上面各類測試。需要數字示波器配合一些程式進行分析。

公司使用的是rigol的示波器。一般的方法是通過u盤拷波形。手裡這台示波器插什麼u盤顯示的大小都是0kb,也無法儲存。

無奈之下打**給技術支援。說是示波器有二次開發介面。從網上下到程式設計手冊,果然有一套scpi命令。

引用一下:scpi, standard commands for programmable instruments的縮寫,即程式控制儀器(可程式設計儀器)標準命令集。

scpi 是一種建立在現有標準ieee488.1 和 ieee 488.2 基礎上,並遵循了ieee754 標準中浮點運算規則、iso646 資訊交換7 位編

碼符號(相當於ascll程式設計)等多種標準的標準化儀器程式語言。

感覺非常不錯,是通用介面。安捷倫,泰克等示波器都相容這個協議。有一種一勞永逸的感覺。

可惜的是rigol的程式設計手冊只給了指令集,所有的開發都要基於ni labview的那套visa介面。本科的時候搞過,感覺一切和

labview掛鉤的開發都非常的業餘。而且本身示波器有lan介面。為什麼基於網路的開發還要載入人家的靜態庫。

於是把示波器的網線連上,rigol自己的pc客戶端開起來,wireshark開起來抓包。一目了然。

從抓包的資訊可以看出,lan客戶端走的是tcp,示波器ip 192.168.192.88這個是我設定的,埠號619,做tcp伺服器。這個應該

是裝置預設的。然後在tcp之上走了個vxi-11的協議,還有涉及關鍵字: remote procedure call,好像就是著名的rpc。

有了這幾個資訊之後搞起來就很方便了。先驗證一下tcp伺服器和埠號是不是對的。拿tcp除錯助手連一下,沒問題。

然後查一下vxi-11:

the vxi-11 protocol is an rpc-based communication protocol primarily

designed for connecting instruments (such as

oscilloscopes, multimeters, spectrum analyzers etc.) to controllers (e.g., pcs). 

看樣子需要乙個vxi-11除錯助手之類的東西。於是網上找,可惜沒找到。但是找到乙個python的庫:python-vxi11

那麼接下來知道寫好初始化和配置時序,就可以連續讀取示波器的取樣資料了。

ultrascope 訪問流程:

instr.write(':run')
需要這行**啟動示波器的lan,否則scpi指令返回的值很奇怪。

remote procedure call: xid

按照wireshark截的報文,訊息每首發來回一次,xid加1。

用於標記回包對應的查詢包。

can通道取樣頻率 can標定

canscope 分析儀是 can 匯流排開發與測試的專業工具,集海量儲存示波器 網路分析儀 誤位元速率分析儀 協議分析儀及可靠性測試工具於一身。將訊號分為模擬通道和數字通道進行處理,然後再結合後儲存 canscope 內部原理 canscope 軟體介面 100mhz 實時示波器,可以對 canh...

示波器CAN波特率

因為對於車上的can匯流排的介面以及波特率沒有對應的資料可查 不同的車介面都不一樣,波特率也可能不同 做一想要從車上測出can匯流排上的資料還不太容易。於是我首先使用示波器 我使用的示波器型號是tds 220 來找出汽車上can匯流排的介面,然後測出can匯流排的波特率,測量波特率的步驟如下 1 將...

數字儲存示波器

與模擬示波器不同,數字示波器 通過模數轉換器 adc 把被測電壓轉換為數字資訊。它捕獲的是波形的一系列樣值,並對樣值進行儲存,儲存限度是判斷累計的樣值是否能描繪出波形為止。隨後,數字示波器重構波形。數字示波器分為 數字儲存示波器 dso 數字螢光示波器 數字螢光示波器 和取樣示波器。數字的手段則意味...