采用CAN總線的工業(yè)自動(dòng)化平臺(tái)
輔助進(jìn)行演示與評(píng)估的特性
---我們向演示平臺(tái)添加了某些特性,以輔助對(duì)CAN總線功能進(jìn)行評(píng)估。這些特性介紹如下。F2810包括一個(gè)SCI接口,可通過(guò)電平轉(zhuǎn)換器(如SN75LV4737A)方便地連接到PC的UART。我們開(kāi)發(fā)了命令接口,允許從主機(jī)PC上的程序?qū)偩€操作進(jìn)行監(jiān)視與控制。我們可使用該程序向其他節(jié)點(diǎn)發(fā)送控制消息,并監(jiān)視CAN總線的狀態(tài)。在板上放置了幾個(gè)LED以顯示CAN總線何時(shí)工作、何時(shí)從PC接收命令等。
總線負(fù)載與訛誤(Corruption)
---這部分將描述用于給總線加載流量的電路系統(tǒng)及用于向總線注入錯(cuò)誤條件的電路系統(tǒng)。
---總線負(fù)載
---現(xiàn)有兩種機(jī)制可給CAN總線加載流量。第一種機(jī)制為傳感器節(jié)點(diǎn)上的“滿溢數(shù)據(jù)包(flood packet)”發(fā)生器。數(shù)據(jù)包充滿總線的速率通過(guò)膝上型電腦或PC的GUI接口的下拉菜單項(xiàng)控制。合適的滿溢速率取決于總線的數(shù)據(jù)速率(1Mbps、500kbps、250kbps、125kbps)。表2顯示了就每種數(shù)據(jù)速率而言總線上的理論最大數(shù)據(jù)包負(fù)載,以及總線負(fù)載接近最大時(shí)GUI上可用的推薦速率。消息的位長(zhǎng)由以下方程式得出:
---L=SOF+MSGID+RTR+CTRL+(8·MSGLENGTH)+CRC+ACK+EOF+IFS+STUFF
---其中:
---* SOF是幀長(zhǎng)度的起點(diǎn),1b。
---* MSGID是消息標(biāo)識(shí)符長(zhǎng)度,11b
---* RTR是遠(yuǎn)程傳輸請(qǐng)求的位長(zhǎng),1b
---* CTRL是控制字段長(zhǎng)度,6b,其包括IDE(標(biāo)志符擴(kuò)展位)、r0(保留位)以及DLC(數(shù)據(jù)長(zhǎng)度)字段。
---* MSGLENGTH是消息所占字節(jié)的長(zhǎng)度。大多數(shù)消息為6B長(zhǎng),其中一條消息為8字節(jié)長(zhǎng)。計(jì)算時(shí)假定為6B。
---* CRT是循環(huán)冗余碼的長(zhǎng)度,16bit。
---* ACK是確認(rèn)比特(acknowledge bit)的長(zhǎng)度(此為2)。
---* EOF是幀結(jié)尾標(biāo)志符長(zhǎng)度,7b
---* IFS是消息間的最小總線幀間間隔時(shí)間,7b。
---* STUFF是因填充位(stuff bit)造成的消息額外時(shí)間。長(zhǎng)串零之后總線將強(qiáng)制進(jìn)行轉(zhuǎn)移,我們假定消息與消息標(biāo)志符的填充位最大數(shù)為(11+48)/5b。
---第二種機(jī)制可用來(lái)使總線負(fù)載超出其容量。馬達(dá)旋轉(zhuǎn)的速率決定著馬達(dá)速度數(shù)據(jù)包載入總線的速率。馬達(dá)速度從零開(kāi)始上升時(shí),總線的負(fù)載也逐漸加大。在某一點(diǎn)上,傳感器節(jié)點(diǎn)上“滿溢數(shù)據(jù)包”發(fā)生器的低優(yōu)先級(jí)數(shù)據(jù)包及馬達(dá)節(jié)點(diǎn)的馬達(dá)數(shù)據(jù)包將被延遲,從而使得更高優(yōu)先級(jí)的流量可進(jìn)入總線。系統(tǒng)監(jiān)控節(jié)點(diǎn)檢測(cè)延遲的消息,通過(guò)使揚(yáng)聲器發(fā)出卡嗒聲表明發(fā)生了消息延遲。因此,揚(yáng)聲器卡嗒聲表明總線仲裁正在工作,使得低優(yōu)先級(jí)的數(shù)據(jù)滿溢及馬達(dá)位置數(shù)據(jù)包延遲,以支持高優(yōu)先級(jí)數(shù)據(jù)包的傳輸。
總線訛誤
---系統(tǒng)監(jiān)控節(jié)點(diǎn)還包括在GUI接口控制下向總線注入錯(cuò)誤條件的功能。總線訛誤器能夠?qū)偩€進(jìn)行以下工作:
---* 打開(kāi)系統(tǒng)監(jiān)控板上總線連接器與CAN收發(fā)器之間的CAN_high line
---* 打開(kāi)系統(tǒng)監(jiān)控板上總線連接器與CAN收發(fā)器之間的CAN_low line
---* 短路CAN_high line為5V
---* 短路CAN_low line為5V
---* 短路CAN_high line為接地
---* 短路CAN_low line為接地
---* 同時(shí)短路CAN_high line與CAN_high line
---* 去除CAN線路之間的終端
---* 在CAN線路間安裝更多的終端
---還可以產(chǎn)生另一種錯(cuò)誤:
---* 使CAN節(jié)點(diǎn)斷電(將一塊板從電源上拔下)
---就上述大多數(shù)錯(cuò)誤而言,總線將停止工作。上述某些錯(cuò)誤條件將導(dǎo)致總線出錯(cuò)率下降。我們可通過(guò)GUI接口提供的統(tǒng)計(jì)數(shù)據(jù)查看錯(cuò)誤條件的影響。我們要求CAN收發(fā)器能夠承受上述錯(cuò)誤條件并在故障去除后恢復(fù)相同的出錯(cuò)率性能。
評(píng)論