一種伺服驅(qū)動(dòng)器數(shù)據(jù)傳輸?shù)耐ㄓ崊f(xié)議的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于傳動(dòng)技術(shù)領(lǐng)域,涉及一種工業(yè)控制器的網(wǎng)絡(luò)協(xié)議,特別是涉及一種伺 服驅(qū)動(dòng)器數(shù)據(jù)傳輸?shù)耐ㄓ崊f(xié)議。
【背景技術(shù)】
[0002] 在工業(yè)控制技術(shù)領(lǐng)域中,串口通訊協(xié)議使用最為廣泛的是Modbus協(xié)議,其定義了 控制器能夠認(rèn)識(shí)和使用的消息結(jié)構(gòu),通過(guò)Modbus協(xié)議,電子設(shè)備相互之間、或經(jīng)由網(wǎng)絡(luò)和 其它設(shè)備之間可以通信,而不管它們是經(jīng)過(guò)何種網(wǎng)絡(luò)進(jìn)行通訊的。其規(guī)定了信息、數(shù)據(jù)的結(jié) 構(gòu)、命令和應(yīng)答的方式。
[0003] 而在伺服驅(qū)動(dòng)數(shù)據(jù)傳輸時(shí),數(shù)據(jù)的傳輸量大,因此,對(duì)數(shù)據(jù)的正確監(jiān)控與處理,則 需要一種更為直觀、簡(jiǎn)潔、易調(diào)試、自由程序處理、并且傳送可靠的專用通訊協(xié)議。而本發(fā)明 的伺服驅(qū)動(dòng)器數(shù)據(jù)傳輸?shù)耐ㄓ崊f(xié)議定義了伺服驅(qū)動(dòng)器能認(rèn)識(shí)使用的消息結(jié)構(gòu),描述了控 制設(shè)備請(qǐng)求訪問(wèn)伺服驅(qū)動(dòng)器的過(guò)程,以及回應(yīng)來(lái)自控制設(shè)備的請(qǐng)求,以及怎樣偵測(cè)錯(cuò)誤。它 制定了消息域格局和內(nèi)容的格式。
[0004] 本發(fā)明的伺服驅(qū)動(dòng)器數(shù)據(jù)傳輸通訊協(xié)議不管是主站從從站伺服驅(qū)動(dòng)器讀取參數(shù) 或者是主站寫(xiě)入?yún)?shù)到從站伺服驅(qū)動(dòng)器,都可以保證主站和從站伺服驅(qū)動(dòng)器之間的數(shù)據(jù)順 利傳輸,不會(huì)發(fā)生錯(cuò)誤。而且?guī)袷胶?jiǎn)單、緊湊,并且通俗易懂,傳輸距離長(zhǎng),抗干擾能力強(qiáng), 低成本,用戶自定義軟件協(xié)議,使用直觀簡(jiǎn)潔,開(kāi)發(fā)自由簡(jiǎn)單。
[0005] 因此,提供一種新的伺服驅(qū)動(dòng)器數(shù)據(jù)傳輸?shù)耐ㄓ崊f(xié)議是本領(lǐng)域技術(shù)人員需要解決 的課題。
【發(fā)明內(nèi)容】
[0006] 鑒于以上所述現(xiàn)有技術(shù)的缺點(diǎn),本發(fā)明的目的在于提供一種伺服驅(qū)動(dòng)器數(shù)據(jù)傳輸 的通訊協(xié)議,用于解決現(xiàn)有技術(shù)中不能很好地控制主站對(duì)從站伺服驅(qū)動(dòng)器在數(shù)據(jù)傳輸通訊 上的問(wèn)題。
[0007] 為實(shí)現(xiàn)上述目的及其他相關(guān)目的,本發(fā)明提供一種伺服驅(qū)動(dòng)器數(shù)據(jù)傳輸?shù)耐ㄓ崊f(xié) 議,所述通訊協(xié)議為ASCII模式通訊協(xié)議,采用點(diǎn)對(duì)點(diǎn)或點(diǎn)對(duì)多的主從通訊拓?fù)浣Y(jié)構(gòu)進(jìn)行 數(shù)據(jù)傳輸,所述點(diǎn)對(duì)點(diǎn)的主從通訊拓?fù)浣Y(jié)構(gòu)指的是一個(gè)主站與一個(gè)從站之間的數(shù)據(jù)通訊, 所述點(diǎn)對(duì)多的主從通信拓?fù)浣Y(jié)構(gòu)指的是一個(gè)主站與多個(gè)從站之間的數(shù)據(jù)通訊。
[0008] 作為本發(fā)明伺服驅(qū)動(dòng)器數(shù)據(jù)傳輸?shù)耐ㄓ崊f(xié)議的一種優(yōu)化的方案,所述從站為伺服 驅(qū)動(dòng)器,所述主站為可編程控制器或者人機(jī)界面。
[0009] 作為本發(fā)明伺服驅(qū)動(dòng)器數(shù)據(jù)傳輸?shù)耐ㄓ崊f(xié)議的一種優(yōu)化的方案,所述主站和從站 之間設(shè)置有設(shè)備接口,所述設(shè)備接口為RS-232、RS-422或RS-485。
[0010] 作為本發(fā)明伺服驅(qū)動(dòng)器數(shù)據(jù)傳輸?shù)耐ㄓ崊f(xié)議的一種優(yōu)化的方案,所述通訊協(xié)議的 通訊格式為讀數(shù)據(jù)報(bào)文結(jié)構(gòu)或?qū)憯?shù)據(jù)報(bào)文結(jié)構(gòu)。
[0011] 作為本發(fā)明伺服驅(qū)動(dòng)器數(shù)據(jù)傳輸?shù)耐ㄓ崊f(xié)議的一種優(yōu)化的方案,所述讀數(shù)據(jù)報(bào)文 結(jié)構(gòu)包括:主站詢問(wèn)數(shù)據(jù)報(bào)文、從站反饋?zhàn)x報(bào)文和主站告知傳送結(jié)束報(bào)文。
[0012] 作為本發(fā)明伺服驅(qū)動(dòng)器數(shù)據(jù)傳輸?shù)耐ㄓ崊f(xié)議的一種優(yōu)化的方案,若所述主站詢問(wèn) 錯(cuò)誤或從站反饋錯(cuò)誤,則所述從站反饋錯(cuò)誤報(bào)文,然后主站告知傳送結(jié)束報(bào)文。
[0013] 作為本發(fā)明伺服驅(qū)動(dòng)器數(shù)據(jù)傳輸?shù)耐ㄓ崊f(xié)議的一種優(yōu)化的方案,所述主站詢問(wèn)數(shù) 據(jù)報(bào)文、所述從站反饋報(bào)文、所述反饋錯(cuò)誤報(bào)文以及所述傳送結(jié)束報(bào)文具有特定的報(bào)文傳 送格式。
[0014] 作為本發(fā)明伺服驅(qū)動(dòng)器數(shù)據(jù)傳輸?shù)耐ㄓ崊f(xié)議的一種優(yōu)化的方案,所述寫(xiě)數(shù)據(jù)報(bào)文 結(jié)構(gòu)包括:主站請(qǐng)求寫(xiě)數(shù)據(jù)報(bào)文、從站反饋寫(xiě)報(bào)文和主站告知傳送結(jié)束報(bào)文。
[0015] 作為本發(fā)明伺服驅(qū)動(dòng)器數(shù)據(jù)傳輸?shù)耐ㄓ崊f(xié)議的一種優(yōu)化的方案,所述主站請(qǐng)求寫(xiě) 數(shù)據(jù)報(bào)文、所述從站反饋報(bào)文以及所述傳送結(jié)束報(bào)文具有特定的報(bào)文傳送格式。
[0016] 如上所述,本發(fā)明的伺服驅(qū)動(dòng)器數(shù)據(jù)傳輸?shù)耐ㄓ崊f(xié)議,所述通訊協(xié)議為ASCII模 式通訊協(xié)議,采用點(diǎn)對(duì)點(diǎn)或點(diǎn)對(duì)多的主從通訊拓?fù)浣Y(jié)構(gòu)進(jìn)行數(shù)據(jù)傳輸,所述點(diǎn)對(duì)點(diǎn)的主從 通訊拓?fù)浣Y(jié)構(gòu)指的是一個(gè)主站與一個(gè)從站之間的數(shù)據(jù)通訊,所述點(diǎn)對(duì)多的主從通信拓?fù)浣Y(jié) 構(gòu)指的是一個(gè)主站與多個(gè)從站之間的數(shù)據(jù)通訊。通過(guò)本發(fā)明的通訊協(xié)議,不管是主站從從 站伺服器讀取參數(shù)或者是主站寫(xiě)入?yún)?shù)到從站伺服器,都可以保證主站和從站伺服器之間 的數(shù)據(jù)順利傳輸,不會(huì)發(fā)生錯(cuò)誤。另外,本發(fā)明的通訊協(xié)議中幀格式簡(jiǎn)單、緊湊,并且通俗易 懂,用戶使用容易,開(kāi)發(fā)自由簡(jiǎn)單。
【附圖說(shuō)明】
[0017] 圖1顯示為本發(fā)明的一個(gè)主站與一個(gè)從站的點(diǎn)對(duì)點(diǎn)通訊拓?fù)浣Y(jié)構(gòu)。
[0018] 圖2顯示為本發(fā)明的一個(gè)主站與多個(gè)從站的點(diǎn)對(duì)多通訊拓?fù)浣Y(jié)構(gòu)。
[0019] 圖3顯示為本發(fā)明通訊協(xié)議流程示意圖。
【具體實(shí)施方式】
[0020] 以下通過(guò)特定的具體實(shí)例說(shuō)明本發(fā)明的實(shí)施方式,本領(lǐng)域技術(shù)人員可由本說(shuō)明書(shū) 所揭露的內(nèi)容輕易地了解本發(fā)明的其他優(yōu)點(diǎn)與功效。本發(fā)明還可以通過(guò)另外不同的具體實(shí) 施方式加以實(shí)施或應(yīng)用,本說(shuō)明書(shū)中的各項(xiàng)細(xì)節(jié)也可以基于不同觀點(diǎn)與應(yīng)用,在沒(méi)有背離 本發(fā)明的精神下進(jìn)行各種修飾或改變。
[0021] 本發(fā)明提供一種伺服驅(qū)動(dòng)器數(shù)據(jù)傳輸?shù)耐ㄓ崊f(xié)議,所述通訊協(xié)議為ASCII模式通 訊協(xié)議,采用點(diǎn)對(duì)點(diǎn)或點(diǎn)對(duì)多的主從通訊拓?fù)浣Y(jié)構(gòu)進(jìn)行數(shù)據(jù)傳輸,所述點(diǎn)對(duì)點(diǎn)的主從通訊 拓?fù)浣Y(jié)構(gòu)指的是一個(gè)主站與一個(gè)從站之間的數(shù)據(jù)通訊(如附圖1),所述點(diǎn)對(duì)多的主從通信 拓?fù)浣Y(jié)構(gòu)指的是一個(gè)主站與多個(gè)從站之間的數(shù)據(jù)通訊(如附圖2)。
[0022] 所述主站用于對(duì)整個(gè)系統(tǒng)進(jìn)行管理,與從站之間直接進(jìn)行數(shù)據(jù)通訊。數(shù)據(jù)通訊的 報(bào)文形式遵從通訊協(xié)議的規(guī)定。所述從站為伺服驅(qū)動(dòng)器。所述主站可以是可編程控制器或 者人機(jī)界面,當(dāng)然,也可以其他合適的可編程的智能設(shè)備,例如,計(jì)算機(jī)等,在此不限。在所 述主站和從站之間設(shè)置有設(shè)備接口,設(shè)備接口上定義了連接口的針腳及信號(hào)位,便于主站 和從站之間進(jìn)行信號(hào)傳輸。所本協(xié)議支持傳統(tǒng)的RS-232、RS-422或RS-485等設(shè)備接口。
[0023] 本協(xié)議建立了主站對(duì)從站查詢的格式,包括伺服驅(qū)動(dòng)設(shè)備的地址、所有要發(fā)送的 數(shù)據(jù)以及錯(cuò)誤檢測(cè)域。通訊數(shù)據(jù)格式的數(shù)據(jù)位為7位,停止位1位,偶校驗(yàn)、波特率可以自 由設(shè)定。
[0024] 具體地,如圖3所示,本發(fā)明的通訊協(xié)議流程包括:
[0025] 首先執(zhí)行步驟S1,由主站發(fā)出請(qǐng)求從站讀或?qū)懙臄?shù)據(jù)報(bào)文;
[0026] 然后執(zhí)行步驟S2,從站根據(jù)主站的指令,反饋主站讀或?qū)懙臄?shù)據(jù)報(bào)文、或從站反饋 錯(cuò)誤報(bào)文;
[0027] 最后執(zhí)行步驟S3,主站告知傳送結(jié)束。
[0028] 更具體地,所述通訊協(xié)議的通訊格式為讀數(shù)據(jù)報(bào)文結(jié)構(gòu)或?qū)憯?shù)據(jù)報(bào)文結(jié)構(gòu)。
[0029] 當(dāng)所述主站想要從從站(伺服驅(qū)動(dòng)器)中讀取相關(guān)參數(shù)時(shí),則通訊格式為讀數(shù)據(jù) 報(bào)文結(jié)構(gòu)。所述讀數(shù)據(jù)報(bào)文結(jié)構(gòu)包括:主站詢問(wèn)數(shù)據(jù)報(bào)文、從站反饋?zhàn)x報(bào)文和傳送結(jié)束報(bào) 文。若所述主站詢問(wèn)錯(cuò)誤或從站反饋錯(cuò)誤,則所述從站反饋錯(cuò)誤報(bào)文,然后主站告知傳送結(jié) 束報(bào)文。作為示例,所述主站詢問(wèn)數(shù)據(jù)報(bào)文包括傳送結(jié)束位、地址碼、數(shù)據(jù)區(qū)、查詢碼四個(gè)部 分的數(shù)據(jù)。由主站發(fā)出如下幀數(shù)據(jù):
[0031] 其中,每一個(gè)部分的意思^
[0032] EOT :表示傳送結(jié)束,ASCII的16進(jìn)制數(shù)據(jù)表示為04 ;
[0033] ADR :40~5F是驅(qū)動(dòng)器地址,表示從00~31,一共32個(gè)站,其中40這個(gè)地址是廣 播地址;
[0034] ENQ :表示查詢,ASCII的16進(jìn)制數(shù)據(jù)表示為05。
[0035] 所述從站反饋?zhàn)x報(bào)文包括地址碼、報(bào)文起始位、參數(shù)號(hào)、=符號(hào)位、參數(shù)值、報(bào)文結(jié) 束位、校驗(yàn)碼七個(gè)部分的數(shù)據(jù)。由從站反饋如下幀數(shù)據(jù):
[0037] 其中,每一個(gè)部分的意思為:
[0038] ADR :40~5F是驅(qū)動(dòng)器地址,表示從00~31,一共32個(gè)站,其中40這個(gè)地址是廣 播地址;
[0039] STX :表示報(bào)文開(kāi)始,ASCII的16進(jìn)制數(shù)據(jù)表示為02 ;
[0040] ETX :表示報(bào)文結(jié)束,ASCII的16進(jìn)制數(shù)據(jù)表示為03 ;
[0041 ] CODE :表不參數(shù)號(hào);
[0042] VALUE :表示參數(shù)值;
[0043] =:等于符號(hào)用于區(qū)分參數(shù)號(hào)CODE和參數(shù)值VALUE,ASCII的16進(jìn)制數(shù)據(jù)表示為 3D。
[0044] BCC :表示校驗(yàn)碼,從CODE開(kāi)始到ETX結(jié)束(包括ETX)的X0R異或校驗(yàn)數(shù)值,16進(jìn) 制表示,為一個(gè)字節(jié)。
[0045] 所