DeviceNet—開發(fā)者指南(譯自CIA)
Devicenet開發(fā)者必須考慮一些問題如通訊要求,CAN收發(fā)器和協(xié)議控制器的選擇等。設(shè)計(jì)人員要從DeviceNet協(xié)議棧的特點(diǎn)和所使用的開發(fā)工具出發(fā),來決定這些事項(xiàng)。市場(chǎng)上的大部分DeviceNet產(chǎn)品都只有從站功能,因此大部分的文章都只討論從站的開發(fā)設(shè)計(jì)。如果你考慮要設(shè)計(jì)帶有主站功能的產(chǎn)品,我們建議你與一個(gè)或幾個(gè)提供DeviceNet服務(wù)的公司聯(lián)系。
從站開發(fā)中首先要考慮的是I/O通訊的方式。初期,Devicenet只定義了位選通(bit-strobe)和輪詢(polled)兩種I/O通訊的方式可以在主站中使用。然而,隨著一些公司的帶有狀態(tài)改變(COS)或循環(huán)(Cyclic)I/O交換方式的主站產(chǎn)品如所有的Allen-Bradley的掃描模塊得到應(yīng)用,即使今天的客戶可以不要求這些功能,但在設(shè)計(jì)的時(shí)候也要考慮到這些I/O數(shù)據(jù)交換方式。
位選通(Bit-strobe)主要用于傳感器設(shè)備或其它一些只有很少(1Bit)或沒有輸出數(shù)據(jù)(output data)要求的從站。除此外,位選通也用于將輸出數(shù)據(jù)同步送達(dá)多個(gè)設(shè)備。但是,由于選通幀的使用并未在Devicenet協(xié)議中被標(biāo)準(zhǔn)化,因此一些設(shè)備自身?yè)碛械膽?yīng)用將受到限制。
輪詢(Polling)屬于“bread and butter”型的I/O交換方式。由于所有的主站設(shè)備都支持這種方式,所以這是開發(fā)必須考慮的。
狀態(tài)改變(COS)是一種功能很強(qiáng)大的I/O數(shù)據(jù)交換方式,它能增加網(wǎng)絡(luò)的吞吐量,降低某一時(shí)間的網(wǎng)絡(luò)負(fù)載。這些數(shù)據(jù)交換方式都允許完全使用CAN協(xié)議固有的多主系統(tǒng)能力,因此對(duì)于所有新的開發(fā)都要考慮到。雖然位選能(Bit-strobe)僅限于最大1bit消耗數(shù)據(jù)(consumed data)和64bits生產(chǎn)數(shù)據(jù)(produced data),但輪詢,狀態(tài)改變和循環(huán)的I/O數(shù)據(jù)交換方式都沒有這樣的限制。如果你的I/O數(shù)據(jù)要求大于CAN固有的64bits(8bytes)的數(shù)據(jù)長(zhǎng)度,則要考慮分段協(xié)議,用戶將不必處理任何分段協(xié)議的細(xì)節(jié),因?yàn)樗械姆侄魏椭亟M都由Devicenet協(xié)議自動(dòng)完成。
盡管分段協(xié)議不是必須要支持的,但如果允許在回應(yīng)顯性報(bào)文的消息中使用完整的32個(gè)字符長(zhǎng)的產(chǎn)品名稱,則要考慮使用分段協(xié)議。如果你支持一些特性如通過Devicenet完成組態(tài)下載或固件升級(jí)的功能,你就必須使用分段協(xié)議來發(fā)送和接收?qǐng)?bào)文。
--------------------------------------------------------------------------------
物理層要求
Devicenet標(biāo)準(zhǔn)允許使用四種連接器:迷你型(mini),微型(micro),開放型(open)和帶螺絲終端(screw terminals)。如果可能,使用迷你型,微型,開放型連接器允許隨意的即插即用安裝。所有非IP65/67的設(shè)備都可以使用Phoenix或其它一些廠商的開放型連接器。螺絲終端僅用于不能使用其它連接器的地方。螺絲終端同樣支持從網(wǎng)絡(luò)上斷開而不影響主干線。如果你不使用迷你型,微型或開放型連接器,那建議你在早期的開發(fā)過程中與一致性測(cè)試實(shí)驗(yàn)室聯(lián)系,以考慮他們?cè)谶B接方法的一致性方面的意見。
如果你想把SDS(Smart Distributed System)的產(chǎn)品轉(zhuǎn)換為Devicenet或在后期在你的產(chǎn)品上實(shí)現(xiàn)SDS協(xié)議,那你要知道事實(shí)上微型和開放型連接器的開口銷與DeviceNet協(xié)議不一樣。因此,已經(jīng)存在的SDS和CAN OPEN設(shè)備的電路可能不符合DeviceNet的接線保護(hù)要求,所以將來可能會(huì)必須作修改。DeviceNet所要求的接線保護(hù)電路并未被排除在SDS或CANopen環(huán)境之外。
Devicenet只支持125K,250K,500K波特率,而不支持另外一些基于CAN的網(wǎng)絡(luò)(如SDS和CANopen)所支持的1M波特率,因?yàn)榇瞬ㄌ芈氏聦?duì)網(wǎng)絡(luò)長(zhǎng)度有嚴(yán)格的限制。DeviceNet并不要求三種波特率都支持,盡管不支持所有的波特率的產(chǎn)品在市場(chǎng)上會(huì)處于劣勢(shì),但DeviceNet并未要求都支持所有的波特率。
Devicenet對(duì)收發(fā)器(transceivers)的要求超過了ISO11898的要求,主要是因?yàn)镈eviceNet的物理節(jié)點(diǎn)會(huì)擴(kuò)展到64個(gè)。是否使用物理隔離一般是基于你的產(chǎn)品類型的,與外部無電氣連接且完全使用總線供電的設(shè)備,典型的如傳感器就不需要隔離,但與外部有連接的設(shè)備幾乎都要有物理隔離的。使用隔離光耦要注意,因?yàn)檫@將增加收發(fā)器的延遲,協(xié)議要求通過光耦的最大延遲時(shí)間為40ns,記住使用快速的光耦就意味著低的傳送延遲。目前DeviceNet使用的典型器件是500MHz的器件。
所有的Devicenet節(jié)點(diǎn)都要求CAN的收發(fā)器部分從總線上獲取電源,以保證連接到總線的CAN收發(fā)器不會(huì)因未加電而影響到總線的數(shù)據(jù)傳送。
--------------------------------------------------------------------------------
CAN協(xié)議控制器硬件
由于有各種不同的CAN芯片和單片機(jī)芯片可以使用,所以這里只給出一些通用的做法:
* 不要使用SLIO。在現(xiàn)今的SLIO設(shè)備中,你已經(jīng)無法用它來實(shí)現(xiàn)Devicenet協(xié)議規(guī)定的最小要求了。
* 所有使用11-bit確認(rèn)區(qū)的CAN芯片都可以使用。Devicenet網(wǎng)絡(luò)既不要求使用29-bit長(zhǎng)確認(rèn)區(qū)也不允許其存在于網(wǎng)絡(luò)之中。
* BasicCAN芯片可以很好的使用在只有g(shù)roup 2 only 的從設(shè)備中。協(xié)議中的group 2 only的描述對(duì)BasicCAN是最優(yōu)化的。
* 當(dāng)使用結(jié)合了CAN芯片的微處理器時(shí)要將其組件減到最少,這可能只推薦使用于微處理器與CAN芯片集成在一起并精確的符合設(shè)備的要求的場(chǎng)合。選擇獨(dú)立于單片機(jī)的CAN芯片可以實(shí)現(xiàn)更加復(fù)雜的設(shè)計(jì),在作出選擇之前,要考慮到任何一個(gè)帶CAN芯片的處理器其指令的處理方式。
* 每一個(gè)Devicenet節(jié)點(diǎn)都必須支持一個(gè)32-bit的序列號(hào)(serial number),它是由廠商提供的每臺(tái)設(shè)備都有的唯一識(shí)別碼。因此,你的設(shè)備可能需要非易失可讀寫存儲(chǔ)器,如果你的設(shè)備支持可以設(shè)定參數(shù),則非易失存儲(chǔ)器是必須的。
* 當(dāng)CAN控制器復(fù)位和加電/掉電的時(shí)候要特別注意CAN_H和CAN_L線上的狀態(tài)。這時(shí)CAN芯片將會(huì)漂移或被驅(qū)動(dòng)到不同的電平,使總線被驅(qū)動(dòng)為顯性。所以使用被動(dòng)上拉或下拉,設(shè)置控制寄存器和在TXD到收發(fā)器之間使用逆變器以保證上述情況不會(huì)對(duì)總線產(chǎn)生不良影響。
* 不能允許不使用CAN控制器的輸入(RX0或RX1)而將其留空。應(yīng)將其連接到收發(fā)器的VCC/2或使用電壓分配器,將輸入留空基本上一定會(huì)引起錯(cuò)誤幀。一些CAN控制器也提供一個(gè)寄存器來關(guān)閉未使用輸入的功能,直到不出現(xiàn)這一現(xiàn)象,甚至當(dāng)引腳被禁止掉也會(huì)起作用。
--------------------------------------------------------------------------------
Devicenet協(xié)議的軟件
由于沒有人一定要從別人那里購(gòu)買Devicenet軟件,所以市場(chǎng)上有各種不同的DeviceNet軟件包可以很成功的用來組合成DeviceNet產(chǎn)品。選擇使用一個(gè)特殊的軟件包要考慮其工具的特點(diǎn)和供應(yīng)商提供的服務(wù)支持。定價(jià)會(huì)成為一個(gè)問題,但通常都說你只是支付你獲得的部分。
一些基本的問題必須考慮:
* 所考慮的軟件是否在我的硬件上可以使用?
* 有沒有任何匯編的代碼需要重寫?
* 需要重寫多少硬件驅(qū)動(dòng)程序?
* 執(zhí)行的速度是否符合我的應(yīng)用要求?
* 我的應(yīng)用是否要求所有的通訊方式(I/O和Explicit messaging)?
* 是否支持分段協(xié)議(如果我的應(yīng)用要求)?
* 使用什么編譯器?我所使用的是否和此編譯器相似?
* 是否支持EDS文件?
* 我可以從此軟件包的供應(yīng)商獲得什么支持?
這是每個(gè)電氣設(shè)備供應(yīng)商必須參考的,做出決定應(yīng)該考慮如下問題:
* 公司內(nèi)部是否有足夠的基礎(chǔ)技術(shù),如CAN和單片機(jī)技術(shù)?
* 這是一次性的工作呢,還是可以按自己的期望對(duì)產(chǎn)品進(jìn)行更深的修改?
簡(jiǎn)單的從站可以很容易實(shí)現(xiàn)(一些公司可以在幾星期內(nèi)實(shí)現(xiàn)基本的設(shè)備功能),但對(duì)于更復(fù)雜的設(shè)備,尤其是帶主站功能的設(shè)備,建議你在商業(yè)軟件包的基礎(chǔ)上進(jìn)行設(shè)計(jì)。
--------------------------------------------------------------------------------
組態(tài)(configuration)需求
EDS (Electronic Data Sheet)是一種用于Devicenet設(shè)備組態(tài)的強(qiáng)有力工具,無論你的設(shè)備可能沒有或是很少有參數(shù)可以通過網(wǎng)絡(luò)訪問來進(jìn)行修改,都強(qiáng)烈推薦你生成EDS文件。
設(shè)備的組態(tài)可以分為兩個(gè)部分,第一部分是與網(wǎng)絡(luò)通訊相關(guān)的參數(shù)設(shè)定,包括波特率和MAC ID。許多設(shè)備通過撥碼開關(guān)來設(shè)定其參數(shù),而另外一些設(shè)備可以通過Devicenet連接來訪問這些參數(shù),這在Allen-Bradley DeviceNet管理軟件里被稱為“device commissioning”。一些產(chǎn)品支持自動(dòng)波特率偵測(cè),對(duì)于用戶來說這使用起來會(huì)簡(jiǎn)單些,但顯然必須要有些設(shè)備能夠先在網(wǎng)絡(luò)上建立一個(gè)固定的波特率。換句話說,自動(dòng)波特率偵測(cè)必須要求至少有一個(gè)節(jié)點(diǎn)設(shè)定了一種波特率,或預(yù)先配置了一種波特率。出于此原因所以建議主站設(shè)備不要使用自動(dòng)波特率偵測(cè)以提供給網(wǎng)絡(luò)一個(gè)可參考的波特率。
另一部分是設(shè)備組態(tài)的主要部分,即與應(yīng)用相關(guān)的參數(shù)設(shè)定。如果一個(gè)設(shè)備的EDS被配置后,所有的參數(shù)(可寫的和只讀的)都會(huì)以文本或幫助指令的開式集中顯示。可以用通俗的方式和實(shí)際的格式來修改參數(shù),且bits和bytes不會(huì)混亂。設(shè)備“增強(qiáng)配置”中的參數(shù)顯示也可以在線監(jiān)視參數(shù)的實(shí)際值,對(duì)參數(shù)的監(jiān)視反映了通過EDS參數(shù)列表來對(duì)參數(shù)進(jìn)行訪問。然而,這些參數(shù)可以通過顯性報(bào)文來讀取,因此快速的傳送可能丟失但靜態(tài)值則不會(huì)出現(xiàn)問題。
EDS文件非常容易編寫,如果一個(gè)產(chǎn)品支持參數(shù)類(bbbbbeter class)的實(shí)例,可以通過Devicenet管理軟件來在線生成EDS文件。DeviceNet規(guī)范第二卷第四章包括了如果生成這個(gè)文件的細(xì)節(jié)和例子。
--------------------------------------------------------------------------------
一致性測(cè)試
一致性測(cè)試可以由ODVA測(cè)試實(shí)驗(yàn)室來完成。測(cè)試包括了協(xié)議兼容性,也包括物理層的兼容性,結(jié)果分為通過或失敗。互操作性測(cè)試也在進(jìn)行,但目前還沒有正式的測(cè)試步驟?;ゲ僮餍缘臏y(cè)試的結(jié)果會(huì)提交給供應(yīng)商,但不會(huì)有通過或失敗的定義。
盡管強(qiáng)烈推薦你進(jìn)行一致性測(cè)試,且有些用戶明確要求,但ODVA或Devicenet并不強(qiáng)迫你做任何一致性測(cè)試。通過一致性測(cè)試將增強(qiáng)你的用戶對(duì)你的產(chǎn)品的信任,且可以幫助你開發(fā)更好的產(chǎn)品。一致性測(cè)試分為兩步:
第一步,設(shè)計(jì)者使用一致性測(cè)試軟件(可從ODVA獲得)的描述工具描述產(chǎn)品所具有的對(duì)象的細(xì)節(jié)。這個(gè)描述是一致性測(cè)試軟件對(duì)產(chǎn)品所具有的協(xié)議特性進(jìn)行測(cè)試所必需的。自從一致性測(cè)試軟件可以運(yùn)行于開發(fā)模式,可以對(duì)協(xié)議某個(gè)部分進(jìn)行測(cè)試以來,開發(fā)者就可以在開發(fā)的過程中進(jìn)行預(yù)測(cè)試。強(qiáng)烈建議在代碼調(diào)試的早期就開始使用一致性測(cè)試軟件。一致性特別興趣小組把它看著是一開發(fā)工具,同時(shí)也是協(xié)議確認(rèn)工具。
如果產(chǎn)品通過開發(fā)實(shí)驗(yàn)室的測(cè)試,就可以進(jìn)行第二步,在ODVA注冊(cè)產(chǎn)品的一致性測(cè)試,然后開發(fā)者必須聯(lián)系其中一個(gè)ODVA測(cè)試實(shí)驗(yàn)室以安排測(cè)試會(huì)議,開發(fā)者并不必一定參加實(shí)際的測(cè)試,不過建議參加實(shí)際測(cè)試以可以快速排出一個(gè)小問題。
如果產(chǎn)品通過測(cè)試,ODVA將發(fā)布測(cè)試結(jié)果,如果測(cè)試不通過,則只有測(cè)試實(shí)驗(yàn)室和ODVA知道結(jié)果。
--------------------------------------------------------------------------------
開發(fā)工具
這部分內(nèi)容不是提供開發(fā)產(chǎn)品所必需的工具的完整列表,只是指出一些所必須的工具的類型。
通常假設(shè)你充分具備了單片機(jī)開發(fā)的技術(shù),因此,此部分將只討論Devicenet(CAN)相關(guān)的工具。
作為最小開發(fā)系統(tǒng),你需要一個(gè)CAN監(jiān)視器,典型的為一張插入PC的CAN卡及配套的應(yīng)用軟件。兼容PC的Devicenet卡可以從一些公司獲得如Softing, STZP, Huron Networks, SST或是其它一些公司。參考最新的ODVA產(chǎn)品列表或在線列表,可以找到一個(gè)完整的提供這種卡的廠商列表,性能與報(bào)價(jià)各有不同,確認(rèn)他的產(chǎn)品與你的PC的兼容性及在這張卡上運(yùn)行的軟件的類型后,再作出選擇。
Devicenet或CAN監(jiān)視軟件包有不同的價(jià)格和性能,Allen-Bradley的從站開發(fā)工具是典型的低端工具,而Vector的CANalyzer顯然是一商端的工具,價(jià)格比Allen-Bradley產(chǎn)品高出十倍,通常一分錢一分貨。因此,一個(gè)低端的工具可能是一個(gè)好的起點(diǎn),在整個(gè)簡(jiǎn)單產(chǎn)品的開發(fā)中都可以使用,但對(duì)于復(fù)雜的產(chǎn)品當(dāng)然得使用更加強(qiáng)大的工具。再次強(qiáng)調(diào),ODVA產(chǎn)品列表(文檔或在線版本)是很好的信息來源,如果你只從事CAN級(jí)的工作,則有很多公司提供支持CAN第二層協(xié)議的監(jiān)視器,CiA(CAN in Automation)可以幫助你。
一旦你的產(chǎn)品可以操作了,你可能想把產(chǎn)品放到更典型的工業(yè)控制環(huán)境中運(yùn)行,首先你應(yīng)該把產(chǎn)品放到將來產(chǎn)品所要用到的典型環(huán)境中運(yùn)行。包括在組態(tài)工具中運(yùn)行,看看你的產(chǎn)品如果回應(yīng)顯示報(bào)文請(qǐng)求以改變你的設(shè)備的可配置屬性值。這也可以檢查EDS文件是否正確。
--------------------------------------------------------------------------------
最小模式要求
Devicenet是一個(gè)限制很少的很開放的網(wǎng)絡(luò),但某些原則在開發(fā)開始之前也應(yīng)該考慮到,且在產(chǎn)品投放到市場(chǎng)之前必須遵守。
唯一的注冊(cè)要求是注冊(cè)廠商ID號(hào),廠商ID號(hào)必須與現(xiàn)有產(chǎn)品的廠商號(hào)不同,購(gòu)買協(xié)議規(guī)范后你可以從ODVA獲得你的廠商號(hào),標(biāo)記包括同意使用的時(shí)間并返回給ODVA。一旦你收到你的廠商ID號(hào),則必須在你的公司的所有產(chǎn)品中使用,不同的分公司可以申請(qǐng)不同的廠商ID號(hào),但他們必須分別購(gòu)買協(xié)議規(guī)范并標(biāo)明同意使用的時(shí)間期限。
無一致性測(cè)試的ID號(hào)可能被取代,除非ODVA已經(jīng)將此ID號(hào)分配給你的公司
從站開發(fā)中首先要考慮的是I/O通訊的方式。初期,Devicenet只定義了位選通(bit-strobe)和輪詢(polled)兩種I/O通訊的方式可以在主站中使用。然而,隨著一些公司的帶有狀態(tài)改變(COS)或循環(huán)(Cyclic)I/O交換方式的主站產(chǎn)品如所有的Allen-Bradley的掃描模塊得到應(yīng)用,即使今天的客戶可以不要求這些功能,但在設(shè)計(jì)的時(shí)候也要考慮到這些I/O數(shù)據(jù)交換方式。
位選通(Bit-strobe)主要用于傳感器設(shè)備或其它一些只有很少(1Bit)或沒有輸出數(shù)據(jù)(output data)要求的從站。除此外,位選通也用于將輸出數(shù)據(jù)同步送達(dá)多個(gè)設(shè)備。但是,由于選通幀的使用并未在Devicenet協(xié)議中被標(biāo)準(zhǔn)化,因此一些設(shè)備自身?yè)碛械膽?yīng)用將受到限制。
輪詢(Polling)屬于“bread and butter”型的I/O交換方式。由于所有的主站設(shè)備都支持這種方式,所以這是開發(fā)必須考慮的。
狀態(tài)改變(COS)是一種功能很強(qiáng)大的I/O數(shù)據(jù)交換方式,它能增加網(wǎng)絡(luò)的吞吐量,降低某一時(shí)間的網(wǎng)絡(luò)負(fù)載。這些數(shù)據(jù)交換方式都允許完全使用CAN協(xié)議固有的多主系統(tǒng)能力,因此對(duì)于所有新的開發(fā)都要考慮到。雖然位選能(Bit-strobe)僅限于最大1bit消耗數(shù)據(jù)(consumed data)和64bits生產(chǎn)數(shù)據(jù)(produced data),但輪詢,狀態(tài)改變和循環(huán)的I/O數(shù)據(jù)交換方式都沒有這樣的限制。如果你的I/O數(shù)據(jù)要求大于CAN固有的64bits(8bytes)的數(shù)據(jù)長(zhǎng)度,則要考慮分段協(xié)議,用戶將不必處理任何分段協(xié)議的細(xì)節(jié),因?yàn)樗械姆侄魏椭亟M都由Devicenet協(xié)議自動(dòng)完成。
盡管分段協(xié)議不是必須要支持的,但如果允許在回應(yīng)顯性報(bào)文的消息中使用完整的32個(gè)字符長(zhǎng)的產(chǎn)品名稱,則要考慮使用分段協(xié)議。如果你支持一些特性如通過Devicenet完成組態(tài)下載或固件升級(jí)的功能,你就必須使用分段協(xié)議來發(fā)送和接收?qǐng)?bào)文。
--------------------------------------------------------------------------------
物理層要求
Devicenet標(biāo)準(zhǔn)允許使用四種連接器:迷你型(mini),微型(micro),開放型(open)和帶螺絲終端(screw terminals)。如果可能,使用迷你型,微型,開放型連接器允許隨意的即插即用安裝。所有非IP65/67的設(shè)備都可以使用Phoenix或其它一些廠商的開放型連接器。螺絲終端僅用于不能使用其它連接器的地方。螺絲終端同樣支持從網(wǎng)絡(luò)上斷開而不影響主干線。如果你不使用迷你型,微型或開放型連接器,那建議你在早期的開發(fā)過程中與一致性測(cè)試實(shí)驗(yàn)室聯(lián)系,以考慮他們?cè)谶B接方法的一致性方面的意見。
如果你想把SDS(Smart Distributed System)的產(chǎn)品轉(zhuǎn)換為Devicenet或在后期在你的產(chǎn)品上實(shí)現(xiàn)SDS協(xié)議,那你要知道事實(shí)上微型和開放型連接器的開口銷與DeviceNet協(xié)議不一樣。因此,已經(jīng)存在的SDS和CAN OPEN設(shè)備的電路可能不符合DeviceNet的接線保護(hù)要求,所以將來可能會(huì)必須作修改。DeviceNet所要求的接線保護(hù)電路并未被排除在SDS或CANopen環(huán)境之外。
Devicenet只支持125K,250K,500K波特率,而不支持另外一些基于CAN的網(wǎng)絡(luò)(如SDS和CANopen)所支持的1M波特率,因?yàn)榇瞬ㄌ芈氏聦?duì)網(wǎng)絡(luò)長(zhǎng)度有嚴(yán)格的限制。DeviceNet并不要求三種波特率都支持,盡管不支持所有的波特率的產(chǎn)品在市場(chǎng)上會(huì)處于劣勢(shì),但DeviceNet并未要求都支持所有的波特率。
Devicenet對(duì)收發(fā)器(transceivers)的要求超過了ISO11898的要求,主要是因?yàn)镈eviceNet的物理節(jié)點(diǎn)會(huì)擴(kuò)展到64個(gè)。是否使用物理隔離一般是基于你的產(chǎn)品類型的,與外部無電氣連接且完全使用總線供電的設(shè)備,典型的如傳感器就不需要隔離,但與外部有連接的設(shè)備幾乎都要有物理隔離的。使用隔離光耦要注意,因?yàn)檫@將增加收發(fā)器的延遲,協(xié)議要求通過光耦的最大延遲時(shí)間為40ns,記住使用快速的光耦就意味著低的傳送延遲。目前DeviceNet使用的典型器件是500MHz的器件。
所有的Devicenet節(jié)點(diǎn)都要求CAN的收發(fā)器部分從總線上獲取電源,以保證連接到總線的CAN收發(fā)器不會(huì)因未加電而影響到總線的數(shù)據(jù)傳送。
--------------------------------------------------------------------------------
CAN協(xié)議控制器硬件
由于有各種不同的CAN芯片和單片機(jī)芯片可以使用,所以這里只給出一些通用的做法:
* 不要使用SLIO。在現(xiàn)今的SLIO設(shè)備中,你已經(jīng)無法用它來實(shí)現(xiàn)Devicenet協(xié)議規(guī)定的最小要求了。
* 所有使用11-bit確認(rèn)區(qū)的CAN芯片都可以使用。Devicenet網(wǎng)絡(luò)既不要求使用29-bit長(zhǎng)確認(rèn)區(qū)也不允許其存在于網(wǎng)絡(luò)之中。
* BasicCAN芯片可以很好的使用在只有g(shù)roup 2 only 的從設(shè)備中。協(xié)議中的group 2 only的描述對(duì)BasicCAN是最優(yōu)化的。
* 當(dāng)使用結(jié)合了CAN芯片的微處理器時(shí)要將其組件減到最少,這可能只推薦使用于微處理器與CAN芯片集成在一起并精確的符合設(shè)備的要求的場(chǎng)合。選擇獨(dú)立于單片機(jī)的CAN芯片可以實(shí)現(xiàn)更加復(fù)雜的設(shè)計(jì),在作出選擇之前,要考慮到任何一個(gè)帶CAN芯片的處理器其指令的處理方式。
* 每一個(gè)Devicenet節(jié)點(diǎn)都必須支持一個(gè)32-bit的序列號(hào)(serial number),它是由廠商提供的每臺(tái)設(shè)備都有的唯一識(shí)別碼。因此,你的設(shè)備可能需要非易失可讀寫存儲(chǔ)器,如果你的設(shè)備支持可以設(shè)定參數(shù),則非易失存儲(chǔ)器是必須的。
* 當(dāng)CAN控制器復(fù)位和加電/掉電的時(shí)候要特別注意CAN_H和CAN_L線上的狀態(tài)。這時(shí)CAN芯片將會(huì)漂移或被驅(qū)動(dòng)到不同的電平,使總線被驅(qū)動(dòng)為顯性。所以使用被動(dòng)上拉或下拉,設(shè)置控制寄存器和在TXD到收發(fā)器之間使用逆變器以保證上述情況不會(huì)對(duì)總線產(chǎn)生不良影響。
* 不能允許不使用CAN控制器的輸入(RX0或RX1)而將其留空。應(yīng)將其連接到收發(fā)器的VCC/2或使用電壓分配器,將輸入留空基本上一定會(huì)引起錯(cuò)誤幀。一些CAN控制器也提供一個(gè)寄存器來關(guān)閉未使用輸入的功能,直到不出現(xiàn)這一現(xiàn)象,甚至當(dāng)引腳被禁止掉也會(huì)起作用。
--------------------------------------------------------------------------------
Devicenet協(xié)議的軟件
由于沒有人一定要從別人那里購(gòu)買Devicenet軟件,所以市場(chǎng)上有各種不同的DeviceNet軟件包可以很成功的用來組合成DeviceNet產(chǎn)品。選擇使用一個(gè)特殊的軟件包要考慮其工具的特點(diǎn)和供應(yīng)商提供的服務(wù)支持。定價(jià)會(huì)成為一個(gè)問題,但通常都說你只是支付你獲得的部分。
一些基本的問題必須考慮:
* 所考慮的軟件是否在我的硬件上可以使用?
* 有沒有任何匯編的代碼需要重寫?
* 需要重寫多少硬件驅(qū)動(dòng)程序?
* 執(zhí)行的速度是否符合我的應(yīng)用要求?
* 我的應(yīng)用是否要求所有的通訊方式(I/O和Explicit messaging)?
* 是否支持分段協(xié)議(如果我的應(yīng)用要求)?
* 使用什么編譯器?我所使用的是否和此編譯器相似?
* 是否支持EDS文件?
* 我可以從此軟件包的供應(yīng)商獲得什么支持?
這是每個(gè)電氣設(shè)備供應(yīng)商必須參考的,做出決定應(yīng)該考慮如下問題:
* 公司內(nèi)部是否有足夠的基礎(chǔ)技術(shù),如CAN和單片機(jī)技術(shù)?
* 這是一次性的工作呢,還是可以按自己的期望對(duì)產(chǎn)品進(jìn)行更深的修改?
簡(jiǎn)單的從站可以很容易實(shí)現(xiàn)(一些公司可以在幾星期內(nèi)實(shí)現(xiàn)基本的設(shè)備功能),但對(duì)于更復(fù)雜的設(shè)備,尤其是帶主站功能的設(shè)備,建議你在商業(yè)軟件包的基礎(chǔ)上進(jìn)行設(shè)計(jì)。
--------------------------------------------------------------------------------
組態(tài)(configuration)需求
EDS (Electronic Data Sheet)是一種用于Devicenet設(shè)備組態(tài)的強(qiáng)有力工具,無論你的設(shè)備可能沒有或是很少有參數(shù)可以通過網(wǎng)絡(luò)訪問來進(jìn)行修改,都強(qiáng)烈推薦你生成EDS文件。
設(shè)備的組態(tài)可以分為兩個(gè)部分,第一部分是與網(wǎng)絡(luò)通訊相關(guān)的參數(shù)設(shè)定,包括波特率和MAC ID。許多設(shè)備通過撥碼開關(guān)來設(shè)定其參數(shù),而另外一些設(shè)備可以通過Devicenet連接來訪問這些參數(shù),這在Allen-Bradley DeviceNet管理軟件里被稱為“device commissioning”。一些產(chǎn)品支持自動(dòng)波特率偵測(cè),對(duì)于用戶來說這使用起來會(huì)簡(jiǎn)單些,但顯然必須要有些設(shè)備能夠先在網(wǎng)絡(luò)上建立一個(gè)固定的波特率。換句話說,自動(dòng)波特率偵測(cè)必須要求至少有一個(gè)節(jié)點(diǎn)設(shè)定了一種波特率,或預(yù)先配置了一種波特率。出于此原因所以建議主站設(shè)備不要使用自動(dòng)波特率偵測(cè)以提供給網(wǎng)絡(luò)一個(gè)可參考的波特率。
另一部分是設(shè)備組態(tài)的主要部分,即與應(yīng)用相關(guān)的參數(shù)設(shè)定。如果一個(gè)設(shè)備的EDS被配置后,所有的參數(shù)(可寫的和只讀的)都會(huì)以文本或幫助指令的開式集中顯示。可以用通俗的方式和實(shí)際的格式來修改參數(shù),且bits和bytes不會(huì)混亂。設(shè)備“增強(qiáng)配置”中的參數(shù)顯示也可以在線監(jiān)視參數(shù)的實(shí)際值,對(duì)參數(shù)的監(jiān)視反映了通過EDS參數(shù)列表來對(duì)參數(shù)進(jìn)行訪問。然而,這些參數(shù)可以通過顯性報(bào)文來讀取,因此快速的傳送可能丟失但靜態(tài)值則不會(huì)出現(xiàn)問題。
EDS文件非常容易編寫,如果一個(gè)產(chǎn)品支持參數(shù)類(bbbbbeter class)的實(shí)例,可以通過Devicenet管理軟件來在線生成EDS文件。DeviceNet規(guī)范第二卷第四章包括了如果生成這個(gè)文件的細(xì)節(jié)和例子。
--------------------------------------------------------------------------------
一致性測(cè)試
一致性測(cè)試可以由ODVA測(cè)試實(shí)驗(yàn)室來完成。測(cè)試包括了協(xié)議兼容性,也包括物理層的兼容性,結(jié)果分為通過或失敗。互操作性測(cè)試也在進(jìn)行,但目前還沒有正式的測(cè)試步驟?;ゲ僮餍缘臏y(cè)試的結(jié)果會(huì)提交給供應(yīng)商,但不會(huì)有通過或失敗的定義。
盡管強(qiáng)烈推薦你進(jìn)行一致性測(cè)試,且有些用戶明確要求,但ODVA或Devicenet并不強(qiáng)迫你做任何一致性測(cè)試。通過一致性測(cè)試將增強(qiáng)你的用戶對(duì)你的產(chǎn)品的信任,且可以幫助你開發(fā)更好的產(chǎn)品。一致性測(cè)試分為兩步:
第一步,設(shè)計(jì)者使用一致性測(cè)試軟件(可從ODVA獲得)的描述工具描述產(chǎn)品所具有的對(duì)象的細(xì)節(jié)。這個(gè)描述是一致性測(cè)試軟件對(duì)產(chǎn)品所具有的協(xié)議特性進(jìn)行測(cè)試所必需的。自從一致性測(cè)試軟件可以運(yùn)行于開發(fā)模式,可以對(duì)協(xié)議某個(gè)部分進(jìn)行測(cè)試以來,開發(fā)者就可以在開發(fā)的過程中進(jìn)行預(yù)測(cè)試。強(qiáng)烈建議在代碼調(diào)試的早期就開始使用一致性測(cè)試軟件。一致性特別興趣小組把它看著是一開發(fā)工具,同時(shí)也是協(xié)議確認(rèn)工具。
如果產(chǎn)品通過開發(fā)實(shí)驗(yàn)室的測(cè)試,就可以進(jìn)行第二步,在ODVA注冊(cè)產(chǎn)品的一致性測(cè)試,然后開發(fā)者必須聯(lián)系其中一個(gè)ODVA測(cè)試實(shí)驗(yàn)室以安排測(cè)試會(huì)議,開發(fā)者并不必一定參加實(shí)際的測(cè)試,不過建議參加實(shí)際測(cè)試以可以快速排出一個(gè)小問題。
如果產(chǎn)品通過測(cè)試,ODVA將發(fā)布測(cè)試結(jié)果,如果測(cè)試不通過,則只有測(cè)試實(shí)驗(yàn)室和ODVA知道結(jié)果。
--------------------------------------------------------------------------------
開發(fā)工具
這部分內(nèi)容不是提供開發(fā)產(chǎn)品所必需的工具的完整列表,只是指出一些所必須的工具的類型。
通常假設(shè)你充分具備了單片機(jī)開發(fā)的技術(shù),因此,此部分將只討論Devicenet(CAN)相關(guān)的工具。
作為最小開發(fā)系統(tǒng),你需要一個(gè)CAN監(jiān)視器,典型的為一張插入PC的CAN卡及配套的應(yīng)用軟件。兼容PC的Devicenet卡可以從一些公司獲得如Softing, STZP, Huron Networks, SST或是其它一些公司。參考最新的ODVA產(chǎn)品列表或在線列表,可以找到一個(gè)完整的提供這種卡的廠商列表,性能與報(bào)價(jià)各有不同,確認(rèn)他的產(chǎn)品與你的PC的兼容性及在這張卡上運(yùn)行的軟件的類型后,再作出選擇。
Devicenet或CAN監(jiān)視軟件包有不同的價(jià)格和性能,Allen-Bradley的從站開發(fā)工具是典型的低端工具,而Vector的CANalyzer顯然是一商端的工具,價(jià)格比Allen-Bradley產(chǎn)品高出十倍,通常一分錢一分貨。因此,一個(gè)低端的工具可能是一個(gè)好的起點(diǎn),在整個(gè)簡(jiǎn)單產(chǎn)品的開發(fā)中都可以使用,但對(duì)于復(fù)雜的產(chǎn)品當(dāng)然得使用更加強(qiáng)大的工具。再次強(qiáng)調(diào),ODVA產(chǎn)品列表(文檔或在線版本)是很好的信息來源,如果你只從事CAN級(jí)的工作,則有很多公司提供支持CAN第二層協(xié)議的監(jiān)視器,CiA(CAN in Automation)可以幫助你。
一旦你的產(chǎn)品可以操作了,你可能想把產(chǎn)品放到更典型的工業(yè)控制環(huán)境中運(yùn)行,首先你應(yīng)該把產(chǎn)品放到將來產(chǎn)品所要用到的典型環(huán)境中運(yùn)行。包括在組態(tài)工具中運(yùn)行,看看你的產(chǎn)品如果回應(yīng)顯示報(bào)文請(qǐng)求以改變你的設(shè)備的可配置屬性值。這也可以檢查EDS文件是否正確。
--------------------------------------------------------------------------------
最小模式要求
Devicenet是一個(gè)限制很少的很開放的網(wǎng)絡(luò),但某些原則在開發(fā)開始之前也應(yīng)該考慮到,且在產(chǎn)品投放到市場(chǎng)之前必須遵守。
唯一的注冊(cè)要求是注冊(cè)廠商ID號(hào),廠商ID號(hào)必須與現(xiàn)有產(chǎn)品的廠商號(hào)不同,購(gòu)買協(xié)議規(guī)范后你可以從ODVA獲得你的廠商號(hào),標(biāo)記包括同意使用的時(shí)間并返回給ODVA。一旦你收到你的廠商ID號(hào),則必須在你的公司的所有產(chǎn)品中使用,不同的分公司可以申請(qǐng)不同的廠商ID號(hào),但他們必須分別購(gòu)買協(xié)議規(guī)范并標(biāo)明同意使用的時(shí)間期限。
無一致性測(cè)試的ID號(hào)可能被取代,除非ODVA已經(jīng)將此ID號(hào)分配給你的公司
本文標(biāo)簽:DeviceNet—開發(fā)者指南(譯自CIA)
* 由于無法獲得聯(lián)系方式等原因,本網(wǎng)使用的文字及圖片的作品報(bào)酬未能及時(shí)支付,在此深表歉意,請(qǐng)《DeviceNet—開發(fā)者指南(譯自CIA)》相關(guān)權(quán)利人與機(jī)電之家網(wǎng)取得聯(lián)系。
關(guān)于“DeviceNet—開發(fā)者指南(譯自CIA)”的更多資訊
個(gè)人求購(gòu)










