




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、態(tài)kunluntongtai北京昆侖通態(tài)自動(dòng)化軟件科技有限公司腳本驅(qū)動(dòng)V2.0使用指導(dǎo)手冊(cè)版本號(hào):0.1第一章新腳本驅(qū)動(dòng)說(shuō)明腳本驅(qū)動(dòng)適用范圍1. 腳本驅(qū)動(dòng)適用的版本A. MCGS嵌入式組態(tài)軟件;版本號(hào):6.5(01.0010)注:此版本以上為新版本,以下為舊版本B. MCGS通用版的定制版組態(tài)軟件C. MCGS網(wǎng)絡(luò)版的定制版組態(tài)軟件2. 腳本驅(qū)動(dòng)適用的設(shè)備A. 獨(dú)立板卡設(shè)備B. 串口通信設(shè)備3. 腳本驅(qū)動(dòng)適用的協(xié)議腳本驅(qū)動(dòng)兼容性1. 舊版本腳本驅(qū)動(dòng)兼容新版本組態(tài)軟件2. 新版本腳本驅(qū)動(dòng)不兼容舊版本的組態(tài)軟件,舊版本組態(tài)軟件無(wú)法識(shí)別新版本腳本驅(qū) 動(dòng)腳本驅(qū)動(dòng)新增內(nèi)容1. 腳本驅(qū)動(dòng)新增功能新增加生成
2、向?qū)Чδ埽唧w參照第三章內(nèi)容。2. 腳本驅(qū)動(dòng)新增函數(shù)(1) 數(shù)據(jù)解析函數(shù)1. !SvrGetByteFromByteArr(ByRef ByteArr, start, ByRef n, Flag)2. !SvrGetShortFromByteArr(ByRef ByteArr, start, ByRef n, Flag)3. !SvrGetlntFromByteArr(ByRef ByteArr, start, ByRef n, Flag)4. !SvrGetSingleFromByteArr(ByRef ByteArr, start, ByRef x, Flag)5. !SvrGetByte
3、FromHexStr(str, ByRef n, Flag)6. !SvrGetShortFormHexStr(str, ByRef n, Flag)7. !SvrGetlntFromHexStr(str, ByRef n, Flag)8. !SvrGetSingleFromHexStr(str, ByRef x, Flag)(2) 數(shù)據(jù)校驗(yàn)函數(shù)1. ! SvrByteArraySum(ByRef ByteArr, start, length)2. !SvrStrSum(str, Flag)3. !SvrByteArrayXOR(ByRef ByteArr, start, length)4.
4、!SvrStrXOR(str, Flag)5. !SvrStrModbusCRC(ByRef ByteArr, start, length)6. !SvrStrModbusLRC(str, start, length)7. !OpenLog()8. !CloseLog()(3) 字節(jié)數(shù)組操作函數(shù)1. !HStr2HByre(str, arByte)2. !HByte2HStr(arByte, str)-3 -第二章基礎(chǔ)概念講解通訊協(xié)議1. ACSII碼通訊協(xié)議(字符型協(xié)議)通訊信息按照ASCII碼方式解析得到的參數(shù)信息稱為 ASCII碼通訊。比如:主站接收到從站發(fā)送的 4 個(gè)字符:0x31 0
5、x34 0x2E 0x36,用 ASCII 碼表示為 14.6。2. HEX通訊協(xié)議(字節(jié)數(shù)組協(xié)議)通訊信息按照十六進(jìn)制方式解析得到的參數(shù)信息稱為十六進(jìn)制通訊。比如:主站接收到從站發(fā)送的 4 個(gè)字符:0x31 0x34 0x2E 0x36, 用 HEX 表示為 0x31342E363. ASCII碼通訊與HEX通訊的區(qū)別1)ASCII碼通訊傳送的字符能清楚的了解發(fā)送命令和接收信息,但是傳送的信息速度量少;十六進(jìn)制通訊發(fā)送的字符信息速度量大,但是發(fā)送命令和接收信息不明了。2)ASCII碼的通訊幀1個(gè)字占4個(gè)字符,而HEX的通訊幀1個(gè)字占2個(gè)字符。女口:發(fā)送0x1427信息,ASCII碼發(fā)送4個(gè)字
6、符:0x31 0x34 0x32 0x37,而HEX只需要發(fā)送2個(gè)字符:0x14 0x27。第三章向?qū)褂谜f(shuō)明一.完全適用向?qū)У膮f(xié)議1. ASCII碼協(xié)議,多條命令通訊示例1.1步驟1:協(xié)議分析通訊命令1:模仿ADAM40佃協(xié)議,協(xié)議格式如下:發(fā)送命令:#xxr幀頭:長(zhǎng)1個(gè)字符,固定為#地址:固定長(zhǎng)2個(gè)字符幀尾:長(zhǎng)1個(gè)字符,為回車接收命令:#+xxx.xx+xxx.xx+xxx.xx+xxx.xx+xxx.xx+xxx.xx+xxx.xx+xxx.xxr幀頭:長(zhǎng)1個(gè)字符,固定為#數(shù)據(jù)體:共8個(gè)數(shù)據(jù)體,每個(gè)數(shù)據(jù)體固定長(zhǎng)7個(gè)字符,按ASCII碼方式解析幀尾:長(zhǎng)1個(gè)字符,為回車模擬數(shù)據(jù):發(fā)送命令1:
7、 #01r接收命令 1: #+11.111+22.222+33.333+44.444+55.555+66.666+77.777+88.888r通訊命令2:自己定義,解析數(shù)據(jù)非等長(zhǎng)通訊協(xié)議,分兩種情況:數(shù)據(jù)長(zhǎng)度已知;數(shù)據(jù)長(zhǎng)度未知。下面以數(shù)據(jù)長(zhǎng)度未知,數(shù)據(jù)之間用分隔符分離的協(xié)議,協(xié)議格式如下:發(fā)送命令:#xxxxxxr幀頭:長(zhǎng)1個(gè)字符,固定為#,參與校驗(yàn)地址:固定長(zhǎng)2個(gè)字符,參與校驗(yàn)校驗(yàn):長(zhǎng)2個(gè)字符,累加和校驗(yàn)結(jié)束符號(hào):長(zhǎng)1個(gè)字符,固定為回車接收命令:#xxAA,BBB,CCCC,DDDDD,EEEE,FFF,GG ,HHHHxxr幀頭:長(zhǎng)1個(gè)字符,固定為#數(shù)據(jù)體:8個(gè)數(shù)據(jù)體,以“,”分隔校驗(yàn):長(zhǎng)
8、2個(gè)字符,累加和校驗(yàn)結(jié)束符號(hào):長(zhǎng)1個(gè)字符,固定為回車模擬數(shù)據(jù):發(fā)送命令:#0184r接收命令:#11,222,3333,44444,5555,666,77,8888E3r屋£邇態(tài)kunluntongtal北京昆侖通態(tài)自動(dòng)化軟件科技有限公司1.2步驟2:新建工程進(jìn)入向?qū)陆üこ毯筮M(jìn)入新建工程模式,如圖 3-1-1-1所示圖 3-1-1-1-9 -1. 選擇“使用向?qū)陆üこ獭?,則進(jìn)入向?qū)Ы缑妫鐖D3-1-1-2所示。2. 選擇“不使用向?qū)陆üこ獭?,流程和原?lái)一樣,直接生成示例腳本。圖 3-1-1-2設(shè)置腳本驅(qū)動(dòng)的 名稱和注釋內(nèi)容一 一丿了整個(gè)腳本配' 置分為4個(gè) 步驟,前一
9、個(gè)步驟不執(zhí) 行,不允執(zhí) 行下個(gè)步驟1.3步驟3:配置驅(qū)動(dòng)屬性圖 3-1-1-31. 添加屬性,添加除“設(shè)備地址”和“通訊延時(shí)”以外的屬性,當(dāng)所添加屬性的數(shù)據(jù)類型選擇枚舉型 時(shí),屬性范圍處填寫(xiě)枚舉量,并用“;”隔開(kāi),如圖3-1-1-4所示。2. 刪除屬性,對(duì)多余的屬性進(jìn)行刪除,其中“設(shè)備地址”和“通訊延時(shí)”為默認(rèn)屬性,不允許刪除。3. 設(shè)置屬性,修改設(shè)置已添加的屬性。圖 3-1-1-41.4步驟4:配置通道a®通道名稱通道類型丨通道注釋n通訊狀態(tài)''AI01 r7AI02 7 AI033±I04 r'AI05r AI06rAI0T r'AIOE
10、 "'CHL_NE1000 "CHL.NEWOOl 'CHL_NEW002 r:CHL_MEW003,;CHL_HEW0040CHL_NEVFOO5 "'CHL_NE1I006 fcCHL_HEW007開(kāi)關(guān)型數(shù)値型勤值型勤值型數(shù)值型數(shù)值型數(shù)值型數(shù)值型勤值型勤H型數(shù)值型數(shù)值型數(shù)值型數(shù)値型勤值型數(shù)值型數(shù)蔭型通訊狀態(tài)注釋 浮點(diǎn)通道 浮點(diǎn)通道 浮點(diǎn)通道 浮點(diǎn)通道 浮點(diǎn)通道 浮點(diǎn)通道 浮點(diǎn)通道 浮點(diǎn)通道 新翟立通道添加通適刪除通道諭置通道新建立通道 新建立通道 新建立通道 新逢立通道 新建立通道 新建宣通道 新建立通道取消圖 3-1-1-5完成1.
11、添加通道,可進(jìn)行批量添加操作。2. 刪除通道,對(duì)多余的通道進(jìn)行刪除,可批量刪除(按住 Ctrl鍵,選擇要?jiǎng)h除的通道,點(diǎn)擊“刪除通 道”按鈕即可),其中“通訊狀態(tài)”為默認(rèn)通道,不允許刪除。3. 設(shè)置通道,修改設(shè)置已添加的通道,設(shè)置通道中不能修改通道個(gè)數(shù)。1.5步驟5:配置通訊幀圖 3-1-1-65.1添加收發(fā)通訊幀根據(jù)協(xié)議分析知,2組通訊幀結(jié)構(gòu)信息配置分別如圖3-1-1-7,圖3-1-1-8所示。圖 3-1-1-7罷t縣北京昆侖通態(tài)自動(dòng)化軟件科技有限公司圖 3-1-1-8-15 -5.2設(shè)置收發(fā)通訊幀圖 3-1-1-9對(duì)于ASCII碼通訊幀的數(shù)據(jù)體設(shè)置主要有以下幾種情況:1.無(wú)特別屬性,數(shù)據(jù)內(nèi)容
12、為可見(jiàn)ASCII字符,如圖圖3-1-1-10所示。圖 3-1-1-10廠數(shù)據(jù)類型:數(shù)據(jù)長(zhǎng)度:數(shù)據(jù)屬性:數(shù)據(jù)內(nèi)容:ASCII字符數(shù)據(jù)1字符當(dāng)此數(shù)據(jù)體參與校驗(yàn)時(shí),需要選擇。2.無(wú)特別屬性,數(shù)據(jù)內(nèi)容為不可見(jiàn)ASCII字符,如圖圖3-1-1-11所示。圖 3-1-1-11廠數(shù)據(jù)類型: 數(shù)據(jù)長(zhǎng)度:數(shù)據(jù)內(nèi)容:數(shù)據(jù)屬性:注釋:提供ASCII表,可以方便的直接 選擇不可見(jiàn)的ASCII字符3.數(shù)值不確定的數(shù)據(jù)體,配置“設(shè)備屬性”中的某個(gè)屬性獲得其值,如圖圖廠數(shù)據(jù)類型:圖 3-1-1-12字節(jié)數(shù)據(jù)HEX格式1字節(jié),用2個(gè)字符表示0D,注意一定以 HEX格式 填寫(xiě),無(wú)空格無(wú)對(duì)于相同的數(shù)據(jù)體,設(shè)置 好一個(gè)后,其他可選
13、擇默 認(rèn)設(shè)置,設(shè)置與前一個(gè)相 同的參數(shù)3-1-1-12 所示。ASCII字符數(shù)據(jù)數(shù)據(jù)長(zhǎng)度:數(shù)據(jù)內(nèi)容:2字符設(shè)備屬性中的設(shè)備地址數(shù)據(jù)屬性:eifi 態(tài)kunluntongtai北京昆侖通態(tài)自動(dòng)化軟件科技有限公司4.數(shù)據(jù)解析圖 3-1-1-131)可知長(zhǎng)度的解析,如圖3-1-1-13所示。數(shù)據(jù)類型:數(shù)據(jù)長(zhǎng)度:數(shù)據(jù)內(nèi)容:ASCII字符數(shù)據(jù)7字符解析數(shù)據(jù)中的ASCII數(shù)據(jù)屬性:碼數(shù)據(jù)可知長(zhǎng)度2)未知長(zhǎng)度的解析,如圖3-1-1-14所示。圖 3-1-1-14數(shù)據(jù)類型:ASCII字符數(shù)據(jù)數(shù)據(jù)長(zhǎng)度:1字符,此處數(shù)據(jù)長(zhǎng)度為“解析數(shù)據(jù)間分隔符號(hào)”的長(zhǎng)度數(shù)據(jù)內(nèi)容:無(wú)數(shù)據(jù)屬性:解析數(shù)據(jù)中的 ASCII碼數(shù)據(jù)未知長(zhǎng)度
14、,解析數(shù)據(jù)間分隔ns-17 -©罷t縣北京昆侖通態(tài)自動(dòng)化軟件科技有限公司-# -5.校驗(yàn),如果命令中的數(shù)據(jù)都是確定的,那么可以直接計(jì)算出校驗(yàn)值,如圖3-1-1-15所示。圖 3-1-1-156.預(yù)覽功能,命令信息設(shè)置完之后,可點(diǎn)擊“命令預(yù)覽”查看命令格式,如圖3-1-1-16所示。-發(fā)送命令1幀頭數(shù)據(jù)數(shù)據(jù)底度;1數(shù)尿值津 數(shù)據(jù)厲性;無(wú)泰與校驗(yàn);FALSE 地址數(shù)據(jù)糞型:ASCII數(shù)據(jù)長(zhǎng)度:2數(shù)倨值:0】敷據(jù)JB性土無(wú)離與樓臉:FALSE 幀尾敷據(jù)埃埜HEK歎據(jù)他bl敷倨值5數(shù)據(jù)屬性土無(wú)參與校劇FALSE -揍收命令Eln取消確認(rèn)圖 3-1-1-167.對(duì)于各屬性同前一個(gè)的數(shù)據(jù)體,點(diǎn)擊
15、“默認(rèn)設(shè)置”即可。geifi 態(tài)kun I untongtai北京昆侖通態(tài)自動(dòng)化軟件科技有限公司1.6步驟6:配置預(yù)覽在此預(yù)覽通道和解析數(shù)據(jù)的匹配關(guān)系,并檢查配置是否正確,如果正確就可以,完成配置生成驅(qū)動(dòng), 否則不完成配置生成代碼。通道解析配置預(yù)範(fàn)口設(shè)備通道解析數(shù)據(jù)Ai通訊狀態(tài)通訊狀態(tài)rlAioi接咬侖令1-數(shù)據(jù)000r'AI02接收命會(huì)1+數(shù)據(jù)體函1rjiioa接收命令1.數(shù)幗體皿2pL AI04接枚命令1”數(shù)據(jù)體03f'AIOB接收命令1.數(shù)據(jù)004pL AI06接收命令1”數(shù)據(jù)體加5"'AI07接收命令1-數(shù)據(jù)006r7AI08接枚命令1.數(shù)據(jù)體MT&q
16、uot;CHL-WETOO接收侖令匕奴據(jù)體DDOr'CHL_WEW01接枚命令厶數(shù)據(jù)體Ml"CHL_ME2接收命令乙數(shù)據(jù)002r7CHL_nE3接收命令比數(shù)據(jù)體孔了"CHL_ME4接收命令匕數(shù)據(jù)004rrCHL_HEW005接枚命令比數(shù)據(jù)體0麗V<i)ll確認(rèn)取消圖 3-1-1-17-19 -屋£邇態(tài)kunluntongtai北京昆侖通態(tài)自動(dòng)化軟件科技有限公司圖 3-1-1-18發(fā)送命令幀并接 收數(shù)據(jù),對(duì)接收數(shù) 據(jù)進(jìn)行校驗(yàn)對(duì)接收的數(shù)據(jù) 進(jìn)行解析,并 設(shè)置通道值1.7步驟7:完成配置,進(jìn)行調(diào)試1.代碼的生成與編譯。3-1-1-18 所示。(1)配置都正
17、確后,可以“完成配置”直接生成腳本代碼,如圖'第a幀枚發(fā)腳本str Tup 二 *00" + I I2Hex備地址)str Tup 二! right (strTmpj 2)組建命令幀strSend = 甘 + strTmp +(Chr(ftHOD)丿'發(fā)送和接收數(shù)據(jù)按如下方式:nReturn = IDevWrit eAndReadStr (strSend strRec, 58,通訊延時(shí)) if nReturn < 58 thenI Set IntCharine 1ValueByName ("通訊狀態(tài)",2)esitendif'解析回收
18、數(shù)據(jù),并設(shè)置通道值nlndex = 0vrhile n Index < 8strTmp = ! mi d (at rRec, nlndex* +2J數(shù)宿數(shù)據(jù)二 IValCstrTp)開(kāi)關(guān)數(shù)據(jù)二數(shù)值數(shù)據(jù)! Set SingleChannelValueByNum (nlnd ex -hnCh 11 ndes+2,數(shù)值數(shù)據(jù))nlndex = nlndex + 1endwhilenCh.1 Index 二 nChl Index + nlndex(2)編譯生成的代碼。選擇“調(diào)試”“檢查整個(gè)驅(qū)動(dòng)”,若沒(méi)有問(wèn)題輸岀窗口會(huì)提示“設(shè)備編輯檢查通過(guò)”,如圖3-1-1-19所示。愛(ài)出窗口正在磐譯腳*函#;Ex
19、ilDevice+“ S J± 設(shè)備編譯樓査通過(guò)!圖 3-1-1-192.配置“串口參數(shù)”。(1)創(chuàng)建虛擬串口,如圖 3-1-1-20所示,串口 COM2和COM3虛擬串口圖 3-1-1-20(2)配置腳本驅(qū)動(dòng)中的串口參數(shù)選擇“設(shè)置”“串口父設(shè)備配置”,配置串口參數(shù),如圖3-1-1-21所示。串口號(hào):渡持率:停止f立:校驗(yàn)方式;圖 3-1-1-21(3)設(shè)置串口轉(zhuǎn)發(fā)工具SmartCom.exe。首先,設(shè)置串口,如圖3-1-1-22所示。除串口號(hào)外,其他需要與 腳本驅(qū)動(dòng)中串口參數(shù)一致2.數(shù)據(jù)格式選擇ASCII毓揑制選扌睪無(wú)謊控制金RTS/CTSj 控制xon/xoffE制數(shù)據(jù)格式(*
20、ASCII C MEX圖 3-1-1-22-25 -其次,設(shè)置模擬設(shè)備,串口設(shè)置完后,打開(kāi)串口,選擇“使能”,添加收發(fā)幀,如圖3-1-1-23所示。搔收數(shù)據(jù)區(qū)串口設(shè)宣流控制選擇無(wú)療控制rRTS/CTSii 控制r數(shù)據(jù)格式模擬設(shè)備17使能按收禎發(fā)垃送I圖 3-1-1-23然后,將2組命令幀的模擬數(shù)據(jù)分別添加進(jìn)去,選擇啟動(dòng),如圖3-1-1-24所示。圖 3-1-1-253.進(jìn)行調(diào)試。在腳本驅(qū)動(dòng)中,選擇“調(diào)試”“定時(shí)通道采集”進(jìn)行調(diào)試,如圖3-1-1-26所示。圖 3-1-1-26態(tài)kunluntongtai北京昆侖通態(tài)自動(dòng)化軟件科技有限公司2. HEX碼協(xié)議,單條命令通訊示例2.1步驟1:協(xié)議分析
21、通訊命令:模仿 ModbusRTU協(xié)議,協(xié)議格式如下:發(fā)送命令: 從4區(qū)寄存器地址0開(kāi)始,連續(xù)讀8個(gè)16位無(wú)符號(hào)二進(jìn)制地址:長(zhǎng)1BYTE,內(nèi)容從屬性“設(shè)備地址”中獲得命令碼:長(zhǎng)1BYTE,固定為0x03起始地址:長(zhǎng) 2BYTE,固定為0x0000連續(xù)元件個(gè)數(shù):長(zhǎng) 2BYTE,固定為0x0008校驗(yàn):長(zhǎng)2BYTE,CRC校驗(yàn)接收命令:地址:長(zhǎng)1BYTE,內(nèi)容不重要命令碼長(zhǎng)1BYTE,內(nèi)容預(yù)計(jì)為0x03回收字節(jié)長(zhǎng)度:長(zhǎng)1BYTE,內(nèi)容預(yù)計(jì)為0x10數(shù)據(jù)體00 :長(zhǎng) 2BYTE,內(nèi)容由回收數(shù)據(jù)解析獲得,解析方式為16位無(wú)符號(hào)二進(jìn)制數(shù)據(jù)數(shù)據(jù)體01 :長(zhǎng) 2BYTE,內(nèi)容由回收數(shù)據(jù)解析獲得,解析方式為1
22、6位無(wú)符號(hào)二進(jìn)制數(shù)據(jù)數(shù)據(jù)體02 :長(zhǎng) 2BYTE,內(nèi)容由回收數(shù)據(jù)解析獲得,解析方式為16位無(wú)符號(hào)二進(jìn)制數(shù)據(jù)數(shù)據(jù)體03 :長(zhǎng) 2BYTE,數(shù)據(jù)體03 :長(zhǎng) 2BYTE,內(nèi)容由回收數(shù)據(jù)解析獲得,內(nèi)容由回收數(shù)據(jù)解析獲得,解析方式為解析方式為數(shù)據(jù)體05:長(zhǎng) 2BYTE,內(nèi)容由回收數(shù)據(jù)解析獲得,解析方式為數(shù)據(jù)體06 :長(zhǎng) 2BYTE ,內(nèi)容由回收數(shù)據(jù)解析獲得,解析方式為數(shù)據(jù)體07 :長(zhǎng) 2BYTE ,內(nèi)容由回收數(shù)據(jù)解析獲得,解析方式為16位無(wú)符號(hào)二進(jìn)制數(shù)據(jù)16位無(wú)符號(hào)二進(jìn)制數(shù)據(jù)16位無(wú)符號(hào)二進(jìn)制數(shù)據(jù)16位無(wú)符號(hào)二進(jìn)制數(shù)據(jù)16位無(wú)符號(hào)二進(jìn)制數(shù)據(jù)-27 -校驗(yàn):長(zhǎng)2BYTE,內(nèi)容不重要屋£邇態(tài)ku
23、nluntongtal北京昆侖通態(tài)自動(dòng)化軟件科技有限公司2.2步驟2:新建工程進(jìn)入向?qū)陆üこ毯筮M(jìn)入新建工程模式,如圖3-1-2-1所示。圖 3-1-2-11. 選擇“使用向?qū)陆üこ獭保瑒t進(jìn)入向?qū)Ы缑妫鐖D圖 3-1-2-2所示。2. 選擇“不使用向?qū)陆üこ蹋鞒毯驮瓉?lái)一樣,直接生成示例腳本。圖 3-1-2-22.3步驟3:配置驅(qū)動(dòng)屬性圖 3-1-2-31. 添加屬性,添加除“設(shè)備地址”和“通訊延時(shí)”以外的屬性,當(dāng)所添加屬性的數(shù)據(jù)類型選擇枚 舉型時(shí),屬性范圍處填寫(xiě)枚舉量,并用“;”隔開(kāi),如圖3-1-2-4所示。2. 刪除屬性,對(duì)多余的屬性進(jìn)行刪除,其中“設(shè)備地址”和“通訊延時(shí)”為默認(rèn)屬性,
24、不允許刪 除。3. 設(shè)置屬性,修改設(shè)置已添加的屬性。圖 3-1-2-42.4步驟4:配置通道圖 3-1-2-51. 添加通道,可進(jìn)行批量添加。2. 刪除通道,對(duì)多余通道進(jìn)行刪除,可批量刪除,其中“通訊狀態(tài)”為默認(rèn)通道,不允許刪除3. 設(shè)置通道,修改設(shè)置已添加的通道,設(shè)置通道中不能修改通道個(gè)數(shù)。-29 -昌£邇態(tài)kunluntongtal北京昆侖通態(tài)自動(dòng)化軟件科技有限公司-31 -2.5步驟5:配置通訊幀圖 3-1-2-65.1添加收發(fā)通訊幀根據(jù)協(xié)議分析知,通訊幀結(jié)構(gòu)信息配置分別如圖3-1-2-7所示。圖 3-1-2-7態(tài)kunluntongtal北京昆侖通態(tài)自動(dòng)化軟件科技有限公司5.
25、2設(shè)置收發(fā)通訊幀-33 -圖 3-1-2-8HEX格式)對(duì)于HEX格式命令幀的數(shù)據(jù)體設(shè)置主要有以下幾種情況:(注釋:對(duì)于HEX格式的命令幀,其各幀數(shù)據(jù)體的數(shù)據(jù)類型均為字節(jié)數(shù)據(jù)1.無(wú)特別屬性,如圖3-1-2-9所示。圖 3-1-2-93-1-2-10 所示。2.數(shù)值不確定的數(shù)據(jù)體,配置“設(shè)備屬性”中的某個(gè)屬性獲得其值,如圖屋EiS態(tài)kunluntongtal北京昆侖通態(tài)自動(dòng)化軟件科技有限公司-35 -圖 3-1-2-103-1-2-11 所示。3.解析屬性數(shù)據(jù),數(shù)據(jù)內(nèi)容為不需要填寫(xiě),由回收數(shù)據(jù)解析獲得,如圖圖 3-1-2-113-1-2-12 所示。4. 校驗(yàn),如果命令中的數(shù)據(jù)都是確定的,那么可
26、以直接計(jì)算岀校驗(yàn)值,如圖罷t縣北京昆侖通態(tài)自動(dòng)化軟件科技有限公司-# -圖 3-1-2-125.預(yù)覽功能,命令信息設(shè)置完之后,可點(diǎn)擊“命令預(yù)覽”查看命令格式,如圖3-1-2-13 所示。圖 3-1-2-13北京昆侖通態(tài)自動(dòng)化軟件科技有限公司2.6步驟6:配置預(yù)覽在此預(yù)覽通道和解析數(shù)據(jù)的匹配關(guān)系,并檢查配置是否正確,如果正確就可以,完成配置生成驅(qū)動(dòng), 否則不完成配置生成代碼。圖 3-1-2-14-37 -屋£邇態(tài)kunluntongtai北京昆侖通態(tài)自動(dòng)化軟件科技有限公司2.7步驟7:完成配置1.代碼的生成與編譯。(1)配置都正確后,可以“完成配置”直接生成腳本代碼,如圖3-1-2-1
27、5所示。第0幀收發(fā)腳本! Ar rayKesize (SendByt eArS)SendEyt eArr 1=設(shè)備地址、SendByteArr2 = H03SendBjtaArr3 = &HD0組建命令幀發(fā)送命令幀并接 收數(shù)據(jù),對(duì)接收數(shù) 據(jù)進(jìn)行校驗(yàn)SendEyteArr4=妝EDOSendEyt eArr 5 = feHOOSendEyteArr6 = HOEnReturn = ISvrByteArrayModbusCRC(SendByteArr, lj 5)SendByteArrE? = IB it And(nRet urn, iHO 0DO0 OFF)nlmp = ?BitAnd(
28、nReturn, 4HCOOOFFQD)iSendByteArr E = <BitRShift (nTmp ,8)J'爲(wèi)送和接收數(shù)據(jù)按如下方式:、!Arr ayResize(RecByt eArr, 21)'nRetum = IDevVfrit aAndReadByt eArr (SendByt eArr c, RecByt EArr, 21,通訊延時(shí)) if nKeturn <> 21 then! Sei SrngleCliannelValueByNajiue ("嗎訊妝態(tài)"f 2)sxitendifnlndeK IA對(duì)接收的數(shù)據(jù) 進(jìn)行解
29、析,并 設(shè)置通道值! ArrayResize (Dat aByt eArrj 2)while nlndes 成 8DataByt eArr1 = RecByt eArrnlndex *2+_DartaByt eArr 2 = RecByt eArr nlndez*+41nReturn = ! SvrGet ShortFromEyteAr r (DataByteAr r, 1,開(kāi)關(guān)數(shù)據(jù),) 數(shù)值數(shù)據(jù)二開(kāi)關(guān)數(shù)據(jù)! Set S ins 1 eChanne lalueByNum (nlndex+rtChl Index+數(shù)值數(shù)據(jù)) nlridex = rilnde + .endwhilenChlInde
30、x = nChlIndex + nlndes' 置通訊標(biāo)志,解析都正確! Set Sing 1 eChanns 1 ValueByNane ("通訊狀態(tài)",0)圖 3-1-2-15(2 )編譯生成的代碼。選擇“調(diào)試”“檢查整個(gè)驅(qū)動(dòng)”,若沒(méi)有問(wèn)題輸岀窗口會(huì)提示“設(shè)備編輯檢查通過(guò)”,如圖3-1-2-16所示。筍1;窗口正在輪譯脾本函K:ExhDevice+“通過(guò) 設(shè)備編譯樓査通過(guò)!決輸出窗口冒班査看圖 3-1-2-162.配置“串口參數(shù)”。(1)創(chuàng)建虛擬串口,如圖 3-1-2-17所示,串口 COM2和COM3虛擬串口-39 -圖 3-1-2-173-1-2-18 所示
31、。(2)配置腳本驅(qū)動(dòng)中的串口參數(shù)選擇“設(shè)置”“串口父設(shè)備配置”,配置串口參數(shù),如圖圖 3-1-2-18(3)設(shè)置 Modbus串口轉(zhuǎn)發(fā)工具 mbslave.exeA. 打開(kāi) mbslave.exe,選擇“ Connection ”Connect”進(jìn)行設(shè)置,如圖 3-1-2-19所示。圖 3-1-2-19態(tài)'Sfes? kunluntongtal北京昆侖通態(tài)自動(dòng)化軟件科技有限公司-41 -B.選擇“ Setup”“Slave Definition "進(jìn)行設(shè)置,如圖 3-1-2-20 所示圖 3-1-2-20C.選擇“ Connection”“Quick connect”運(yùn)行,并
32、設(shè)置各地址數(shù)據(jù)。3.進(jìn)行調(diào)試。在腳本驅(qū)動(dòng)中,選擇“調(diào)試”“定時(shí)通道采集”進(jìn)行調(diào)試,如圖 3-1-2-22所示。圖 3-1-2-22態(tài)kunluntongtai北京昆侖通態(tài)自動(dòng)化軟件科技有限公司二. 不完全適用向?qū)?. 步驟1:協(xié)議分析設(shè)備命令:模仿三菱 Q系列串口協(xié)議,協(xié)議格式如下:發(fā)送命令:從D寄存器地址0開(kāi)始,連續(xù)讀8個(gè)16位無(wú)符號(hào)二進(jìn)制幀頭:長(zhǎng)1個(gè)字符,固定為 ENQ即0x05幀識(shí)別號(hào):長(zhǎng)2個(gè)字符,固定為FB本地站號(hào):長(zhǎng)2個(gè)字符,內(nèi)容從設(shè)備屬性中獲得上位站號(hào)(即設(shè)備地址):長(zhǎng)2個(gè)字符,內(nèi)容從設(shè)備屬性中獲得命令碼:長(zhǎng)1個(gè)字符,固定為2寄存器地址:長(zhǎng)2個(gè)字符,固定為D*起始地址:長(zhǎng)6個(gè)字符,
33、固定為000000軟元件個(gè)數(shù):長(zhǎng)4個(gè)字符,固定為0008累加和校驗(yàn):長(zhǎng)2個(gè)字符,通過(guò)自動(dòng)計(jì)算獲得接收命令:幀頭:長(zhǎng)1個(gè)字符,內(nèi)容不重要幀識(shí)別號(hào):長(zhǎng)2個(gè)字符,內(nèi)容不重要本地站號(hào):長(zhǎng)2個(gè)字符,內(nèi)容不重要上位站號(hào):長(zhǎng)2個(gè)字符,內(nèi)容不重要數(shù)據(jù)體0007 :長(zhǎng)4個(gè)字符,內(nèi)容由回收數(shù)據(jù)解析獲得,解析方式為16位無(wú)符號(hào)二進(jìn)制數(shù)據(jù)幀尾:長(zhǎng)1個(gè)字符,內(nèi)容不重要校驗(yàn):長(zhǎng)2個(gè)字符,內(nèi)容不重要分析:由協(xié)議格式所知,腳本驅(qū)動(dòng)向?qū)o(wú)法生成此協(xié)議格式,但是此協(xié)議可以由腳本驅(qū)動(dòng)實(shí)現(xiàn),因此,我們 先通過(guò)腳本驅(qū)動(dòng)向?qū)煽蚣?,然后在生成的代碼中修改即可。-# -©罷t縣北京昆侖通態(tài)自動(dòng)化軟件科技有限公司2. 步驟2:根
34、據(jù)向?qū)赡0逑驅(qū)褂貌襟E在此不在介紹,主要說(shuō)明需注意的幾部分:1.配置屬性由協(xié)議知,本地站號(hào)也需要通過(guò)設(shè)備屬性獲得,因此設(shè)備屬性添加“本地站號(hào)”,如圖3-2-1所示圖 3-2-12.配置通訊幀A.配置通訊幀結(jié)構(gòu)信息,如圖3-2-2所示圖 3-2-2-43 -屋£邇態(tài)kunluntongtai北京昆侖通態(tài)自動(dòng)化軟件科技有限公司B.設(shè)置收發(fā)通訊幀,如圖3-2-3所示-舄送命窖幀頭救棍婁3!:HEK 刪8世蟲(chóng)11S:05踐據(jù)屬性:無(wú)參與按驗(yàn):FALSE地址黛據(jù)賣型ASCII歎據(jù)槍匿:2歎據(jù)值:設(shè)備地址數(shù)惟屁性:悅備盡性馥與校卷:IEUE 盤(pán)務(wù) 魏據(jù)糞型:盤(pán)口 魏據(jù)長(zhǎng)度:】魏據(jù)但詛 歎轄屬
35、性:無(wú)酸與検驗(yàn):TRUE皴據(jù)000 他牖尖型:ASCII魏據(jù)長(zhǎng)虞:2鞍齬信冊(cè) 敗據(jù)厲'性:無(wú)奉與松驗(yàn):TRUE】 數(shù)據(jù)體皿I 數(shù)需莢型:曲CII鼓據(jù)楓度洱僉拒佰:000000 SfttEJS性:無(wú)參與校翳:?RUE 釵據(jù)frD02 數(shù)祝莢型???I致?lián)R度:!皺據(jù)fiiOOOa劇民屆性:無(wú)歩與校驗(yàn):TEUE-標(biāo)牧命督ifcll致?lián)q據(jù)屬性:橙瞪方穴酸與校臉:丁刖E敷據(jù)ftDOD軟齬體JIH效據(jù)002蝕據(jù)低皿3釵據(jù)休D(M數(shù)據(jù)體E5歎據(jù)006魏據(jù)007【數(shù)據(jù)戔擔(dān);貼口 I救據(jù)夷型:舫口 T敷據(jù)莢型:ASCII歎據(jù)案型油丸口 型:ASCII數(shù)需夷型:ASCII Sftiei ASCII
36、敷據(jù)類型沌孔II 數(shù)據(jù)尖型曲丸育 數(shù)需夷型:ASCII致?lián)L(zhǎng)度沁 歎據(jù)長(zhǎng)度沁 魏轄長(zhǎng)度起 竝據(jù)梅廈川 數(shù)據(jù)悵度:! 埶據(jù)悵度山 顛帰悵度沁數(shù)訴1B:mk 聶據(jù)IE:燈汕 數(shù)據(jù)值: 數(shù)劇S: st據(jù) ta: 魏據(jù)值: 致?lián)? 釵據(jù)值:歟帰俏: 鼓據(jù)頂;做搖廟性:無(wú) 寺與犢勁TRUE Sti&S'S:無(wú)參與校轅:TJilJE動(dòng)據(jù)厲性:解析方或?qū)遗c校慫:TRUE 歎據(jù)屈性:堺析方式魁與校驗(yàn):1血 魏裾馬性:堺析方式蠶與搐驗(yàn):TRUE 鼓拒鹿性;解折方式 蠶與校驗(yàn);帝兀 曲據(jù)屈性:解桁方或參與校驗(yàn):TRUE 數(shù)據(jù)屈性:解極方戰(zhàn)參與礎(chǔ):IEUE 歎據(jù)脾性:堺析方武零與校繪:了應(yīng) 蝕據(jù)鹿
37、性;解析方武寺與校驗(yàn);TRUE-45 -幀屋救據(jù)夷3!:HEK強(qiáng)(8忙淒畀«61815:03魏據(jù)屬性:無(wú)參與梭騷:HUJE確認(rèn)E越E蹈溜圖 3-2-3注釋:1. 由于“本地站號(hào)”用向?qū)o(wú)法生成,因此需要在代碼中修改;幀識(shí)別號(hào)是固定值,可在向?qū)е刑砑樱ê显趲^中),也可在代碼中修改。2. 由于接收命令只需要各部分的數(shù)據(jù)長(zhǎng)度,因此:幀頭為幀頭+幀識(shí)別號(hào);地址為本地站號(hào)+設(shè)備地址3. 步驟3:修改向?qū)傻拇a1.根據(jù)向?qū)傻拇a如下所示。'第。幀牧發(fā)腳本st rTiftp =+ I I2Hex (設(shè)備地址)strTmp = !right(strTmp, 2)strSend =
38、IChrtoO5) + st rTap + "2* + *000000* + *0008*st rTmp = !mid(str3endj 2, 15)st rTmp = ! Sur St r Sum Cst rTnipj 1)strSend = strSend + st rTinpstrSend - strSend'發(fā)送和接收數(shù)據(jù)按如下方式:nKet urn 二! DevVr it eAndReadSt r (st rSendj strRec, 4 ;通訊延時(shí)) 辻 nReturn < 42 then15 et Int Channe lValueByNauie (&qu
39、ot;通訊狀態(tài)2)ex丄丈endif'解析回收數(shù)據(jù),并設(shè)置通道倩nlndex = 0while nlndex < 8st rTmp = ! jai d (st rRe c, nlndex *4+8,4)nReturn = I SvrGet ShortFrSt r (st rTmpj 開(kāi)關(guān)數(shù)據(jù),0)數(shù)值數(shù)據(jù)二開(kāi)關(guān)數(shù)據(jù)! SetS lng 1 eChanne 1 ValueByNwn (nlndex+nChl IndBx+2,數(shù)值數(shù)據(jù)) nlndex 二 nlndex +endurhilenChlIndex = mChllndew + nlndex1 Set Int Channel
40、Vai ueByName通訊狀態(tài)0),修改完代碼如下所2.根據(jù)步驟2所知,組幀部分代碼需要修改,添加“本地站號(hào)”和“幀識(shí)別號(hào)”示。J第。幀枚發(fā)腳本str Tup = r 00" + !I2Hex (設(shè)備地址) str Imp = ! riffht (strTmp, 2)rTmpl = ' D0f' + I I2Hex 地站號(hào) rfLtTjitpl = ! right (strTnp, 2)忝加“幀識(shí)別號(hào)"和“本地站號(hào)”茯取2字符的本地站號(hào)strSend = IChr(ftHiJ?)十:上+ fftrTmpl+ strTmp + "2" +
41、 5" + wOOOODDfr + *0008"strTmp = !inid(strSend 2., 19)1,作用:楨頭不參與校驗(yàn)'去掉幀頭么命令幀中粛加了 '噸識(shí)別號(hào)和策本地站號(hào)” 卑了4個(gè)宇符,因此長(zhǎng)度加4,即15+4=19strTmp = ISvfStrSm(strTmpj I) st rSend = si: rSend + st rTmp strSend = rSend態(tài)kunluntongtai北京昆侖通態(tài)自動(dòng)化軟件科技有限公司4.步驟4:進(jìn)行調(diào)試調(diào)試過(guò)程與ASCII碼協(xié)議的調(diào)試相同,此處不再介紹-51 -第四章新增函數(shù)使用說(shuō)明一. 數(shù)據(jù)解析函數(shù)
42、1. !SvrGetByteFromByteArr(ByRef ByteArr, start, ByRef n, Flag)函數(shù)意義:將字節(jié)數(shù)組ByteArr中從start位置開(kāi)始的內(nèi)容輸岀到變量 n中,輸岀格式為1個(gè)字節(jié)整數(shù), 字節(jié)數(shù)組位置計(jì)數(shù)從1開(kāi)始。返回值:整型,判斷輸岀是否正常。0 :正常小于0 :錯(cuò)誤,具體意義如下:-1 :起始索引start小于1;-2:起始索引start大于數(shù)組上限;-3:字節(jié)數(shù)組長(zhǎng)度不足;-4: n不是整型變量;-5:其他錯(cuò)誤。參數(shù):ByteArr :傳址型,字節(jié)型數(shù)組。start:整型,輸出的首位置,從1開(kāi)始。n:傳址型,長(zhǎng)整型。Flag :長(zhǎng)整型,解析方式0
43、 : 8位無(wú)符號(hào);1 : 8位有符號(hào);2 : 8位BCD碼。實(shí) 例:!SvrGetByteFromByteArr(BA, 2, A, 1),字節(jié)數(shù)組為:00 01 02 03 04 05 06 07 08 09 00,則 A=1。2. !SvrGetShortFromByteArr(ByRef ByteArr, start, ByRef n, Flag)函數(shù)意義:將字節(jié)數(shù)組ByteArr中從start位置開(kāi)始的內(nèi)容輸岀到變量 n中,輸岀的格式為2字節(jié)整型, 字節(jié)數(shù)組位置計(jì)數(shù)從1開(kāi)始。返回值:整型,判斷是輸岀是否正常:0:正常;小于0 :錯(cuò)誤,具體意義如下:-1 :啟始索引start小于1 ;-
44、2:?jiǎn)⑹妓饕齭tart大于數(shù)組上限;-3:字節(jié)數(shù)組長(zhǎng)度不足;-4: n不是整型變量;-5:其他錯(cuò)誤。參數(shù):ByteArr :傳址型,字節(jié)型數(shù)組。start:整型,輸出的首位置,從1開(kāi)始。n:傳址型,長(zhǎng)整型。Flag :長(zhǎng)整型,解析方式0 : 16位無(wú)符號(hào);1: 16位有符號(hào);2: 16位BCD碼。實(shí) 例:!SvrGetByteFromByteArr (BA, 2, A, 1),字節(jié)數(shù)組為:00 01 02 03 04 05 06 07 08 09 00 00,則A=5133. !SvrGetlntFromByteArr(ByRef ByteArr, start, ByRef n, Flag)函
45、數(shù)意義:將字節(jié)數(shù)組ByteArr中從start位置開(kāi)始的內(nèi)容輸岀到變量 n中,輸岀的格式為4字節(jié)整型, 字節(jié)數(shù)組位置計(jì)數(shù)從1開(kāi)始。返回值:整型,判斷是輸岀是否正常:0:正常;小于0 :錯(cuò)誤,具體意義如下:-1 :啟始索引start小于1 ;-2:?jiǎn)⑹妓饕齭tart大于數(shù)組上限;-3:字節(jié)數(shù)組長(zhǎng)度不足;-4: n不是整型變量;-5:其他錯(cuò)誤。參 數(shù):ByteArr :傳址型,字節(jié)型數(shù)組。start:整型,輸出的首位置,從1開(kāi)始。n:傳址型,長(zhǎng)整型。Flag :長(zhǎng)整型,解析方式0 : 32位無(wú)符號(hào);1: 32位有符號(hào);2: 32位BCD碼。實(shí) 例:!SvrGetByteFromByteArr (B
46、A, 2, A, 1),字節(jié)數(shù)組為:00 01 02 03 04 05 06 07 08 09 00 00, 則 A=513。4. !SvrGetSingleFromByteArr(ByRef ByteArr, start, ByRef x, Flag)函數(shù)意義:將字節(jié)數(shù)組 ByteArr中從start位置開(kāi)始的內(nèi)容輸出到變量 x中,輸出的格式為4字節(jié)數(shù)值 型,字節(jié)數(shù)組位置計(jì)數(shù)從 1開(kāi)始。返回值:整型,判斷是輸岀是否正常:0:正常;小于0 :錯(cuò)誤,具體意義如下:-1 :啟始索引start小于1 ;-2:?jiǎn)⑹妓饕齭tart大于數(shù)組上限;-3:字節(jié)數(shù)組長(zhǎng)度不足;-4: n不是浮點(diǎn)型變量;-5:其他
47、錯(cuò)誤。參 數(shù):ByteArr :傳址型,字節(jié)型數(shù)組。start:整型,輸出的首位置,從1開(kāi)始。n:傳址型,長(zhǎng)整型。Flag :長(zhǎng)整型,對(duì)應(yīng)4種解碼次序0: “”;1: “”;2:?!啊?;3: “”實(shí) 例:!SvrGetByteFromByteArr (BA, 1, x, 3),字節(jié)數(shù)組為:00 00 08 40 04 05 06 07 08 09 00 00,則 A=4.05. !SvrGetByteFromHexStr(str, ByRef n, Flag)函數(shù)意義:獲得將HEX表示的字符數(shù)據(jù)的內(nèi)容輸岀到變量x中,輸岀的格式為1字節(jié)數(shù)值型,從頭取2個(gè)字符轉(zhuǎn)換成一個(gè)字節(jié) HEX值返回值:整型,
48、判斷是輸岀是否正常:0:正常;小于0 :錯(cuò)誤,具體意義如下:-1 :解析字符長(zhǎng)度不足,至少長(zhǎng)度為2字符-2:解析字符長(zhǎng)度一定為偶數(shù)個(gè)-3:解析字符長(zhǎng)度大于 2個(gè),只取左邊2字符解析-4:變量類型,不是整形-5 :其他錯(cuò)誤參 數(shù):str,字符數(shù)據(jù)。n,傳址型,長(zhǎng)整型;Flag,長(zhǎng)整型,解析方式0 : 8位無(wú)符號(hào);1 : 8位有符號(hào);2 : 8位BCD碼實(shí) 例:! SvrGetByteFromHexStr (str,n,0),str為:“0102030405060708 貝U n = 16. !SvrGetShortFormHexStr(str, ByRef n, Flag)函數(shù)意義:獲得將HEX
49、表示的字符數(shù)據(jù)的內(nèi)容輸岀到變量x中,輸岀的格式為2字節(jié)數(shù)值型,從頭取4個(gè)字符轉(zhuǎn)換成2個(gè)字節(jié)短整型值返回值:整型,判斷是輸岀是否正常:0:正常;小于0 :錯(cuò)誤,具體意義如下:-1 :解析字符長(zhǎng)度不足,至少長(zhǎng)度為2字符-2:解析字符長(zhǎng)度一定為偶數(shù)個(gè)-3:解析字符長(zhǎng)度大于 2個(gè),只取左邊2字符解析-4:變量類型,不是整形-5 :其他錯(cuò)誤參 數(shù):str,字符數(shù)據(jù)。n,傳址型,長(zhǎng)整型;Flag,長(zhǎng)整型,解析方式0 : 16位無(wú)符號(hào);1: 16位有符號(hào);2 : 16位BCD碼實(shí) 例:!SvrGetShortFromHexStr (str,n,0),str 為:“0102030405060708 則 n =
50、 5137. !SvrGetlntFromHexStr(str, ByRef n, Flag)函數(shù)意義:獲得將HEX表示的字符數(shù)據(jù)的內(nèi)容輸岀到變量x中,輸岀的格式為4字節(jié)數(shù)值型,從頭取8個(gè)字符轉(zhuǎn)換成4個(gè)字節(jié)整型值返回值:整型,判斷是輸岀是否正常:0:正常;小于0 :錯(cuò)誤,具體意義如下:-1 :解析字符長(zhǎng)度不足,至少長(zhǎng)度為2字符-2:解析字符長(zhǎng)度一定為偶數(shù)個(gè)-3:解析字符長(zhǎng)度大于 2個(gè),只取左邊2字符解析-4:變量類型,不是整形-5 :其他錯(cuò)誤參 數(shù):str,字符數(shù)據(jù)。n,傳址型,長(zhǎng)整型;Flag,長(zhǎng)整型,解析方式0 : 32位無(wú)符號(hào);1: 32位有符號(hào);2 : 32位BCD碼實(shí) 例:! SvrGetlntFromHexStr (str,n,0),str 為:“10200000030405060708 則 n = 5138. !SvrGetSingleFromHexStr(str, ByRef x, Flag)函數(shù)意義:獲得將HEX表示的字符數(shù)據(jù)的內(nèi)容輸
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2020-2021深圳育才中學(xué)(初中)小學(xué)三年級(jí)數(shù)學(xué)下期末一模試卷帶答案
- 安裝鐵塔施工方案
- 2024年黑龍江大慶中考滿分作文《詩(shī)中誦出赤子心》
- 個(gè)人購(gòu)銷合同范例范例
- 修路個(gè)人勞務(wù)合同范例
- 合伙餐廳合同范本
- 跨部門(mén)合作的工作計(jì)劃實(shí)例
- 鄉(xiāng)村樹(shù)苗銷售合同范例
- 學(xué)生自我管理與目標(biāo)追蹤計(jì)劃
- 培養(yǎng)員工潛能與激勵(lì)方式計(jì)劃
- 四川省抗菌藥物臨床應(yīng)用分級(jí)管理目錄2022年版
- 五年級(jí)道德與法治下冊(cè) (我參與我奉獻(xiàn))新課件
- 我的家鄉(xiāng)湖北宜昌介紹宜昌城市介紹課件
- 2023年陜西西安市曲江第二中學(xué)招聘筆試備考試題及答案解析
- 高一年級(jí)上期班主任教育敘事
- 精神醫(yī)學(xué)案例習(xí)題集
- 《式微》課件完整版
- 甘蔗種植技術(shù)
- 第11課《核舟記》-部編版語(yǔ)文八年級(jí)下冊(cè)
- 護(hù)理基礎(chǔ)知識(shí)1000題
- 課程思政建設(shè)論文:新版義務(wù)教育英語(yǔ)課標(biāo)的中國(guó)底色
評(píng)論
0/150
提交評(píng)論