国产一区二区三区毛片_亚洲乱码AV中文一区二区_亚洲精品无码专区在线播放_日韩欧美一二_咪咪av影院_欧久久av一区二区

夏日雪夢(mèng)
為了夢(mèng),夢(mèng)一生
級(jí)別: VIP會(huì)員
精華主題: 0
發(fā)帖數(shù)量: 528 個(gè)
工控威望: 4295 點(diǎn)
下載積分: 4306 分
在線時(shí)間: 464(小時(shí))
注冊(cè)時(shí)間: 2009-04-03
最后登錄: 2025-02-11
查看夏日雪夢(mèng)的 主題 / 回貼
樓主  發(fā)表于: 2012-04-16 20:43
通過(guò)硬件和軟件偵聽(tīng)的方法,分析PLC內(nèi)部固有的PPI通訊協(xié)議,然后上位機(jī)采用VB編程,遵循PPI通訊協(xié)議,讀寫(xiě)PLC數(shù)據(jù),實(shí)現(xiàn)人機(jī)操作任務(wù)。這種通訊方法,與一般的自由通訊協(xié)議相比,省略了PLC的通訊程序編寫(xiě),只需編寫(xiě)上位機(jī)的通訊程序資源。

       S7-226的編程口物理層為RS-485結(jié)構(gòu),SIEMENS提供MicroWin軟件,采用的是PPI(Point to Point)協(xié)議,可以用來(lái)傳輸、調(diào)試PLC程序。在現(xiàn)場(chǎng)應(yīng)用中,當(dāng)需要PLC與上位機(jī)通訊時(shí),較多的使用自定義協(xié)議與上位機(jī)通訊。在這種通訊方式中,需要編程者首先定義自己的自由通訊格式,在PLC中編寫(xiě)代碼,利用中斷方式控制通訊端口的數(shù)據(jù)收發(fā)。采用這種方式,PLC編程調(diào)試較為煩瑣,占用PLC的軟件中斷和代碼資源,而且當(dāng)PLC的通訊口定義為自由通訊口時(shí),PLC的編程軟件無(wú)法對(duì)PLC進(jìn)行監(jiān)控,給PLC程序調(diào)試帶來(lái)不便。

       SIEMENS S7-200PLC的編程通訊接口,內(nèi)部固化的通訊協(xié)議為PPI協(xié)議,如果上位機(jī)遵循PPI協(xié)議來(lái)讀寫(xiě)PLC,就可以省略編寫(xiě)PLC的通訊代碼。如何獲得PPI協(xié)議?可以在PLC的編程軟件讀寫(xiě)PLC數(shù)據(jù)時(shí),利用第三個(gè)串口偵聽(tīng)PLC的通訊數(shù)據(jù),或者利用軟件方法,截取已經(jīng)打開(kāi)且正在通訊的端口的數(shù)據(jù),然后歸納總結(jié),解析出PPI協(xié)議的數(shù)據(jù)讀寫(xiě)報(bào)文。這樣,上位機(jī)遵循PPI協(xié)議,就可以便利的讀寫(xiě)PLC內(nèi)部的數(shù)據(jù),實(shí)現(xiàn)上位機(jī)的人機(jī)操作功能。

       軟件設(shè)計(jì)

       系統(tǒng)中測(cè)控任務(wù)由SIEMENS S7-226PLC完成,PLC采用循環(huán)掃描方式工作,當(dāng)定時(shí)時(shí)間到時(shí),執(zhí)行數(shù)據(jù)采集或PID控制任務(wù),完成現(xiàn)場(chǎng)的信號(hào)控制。計(jì)算機(jī)的監(jiān)控軟件采用VB編制,利用MSComm控件完成串口數(shù)據(jù)通訊,通訊遵循的協(xié)議為PPI協(xié)議。

       PPI協(xié)議

       西門(mén)子的PPI(Point to Point)通訊協(xié)議采用主從式的通訊方式,一次讀寫(xiě)操作的步驟包括:首先上位機(jī)發(fā)出讀寫(xiě)命令,PLC作出接收正確的響應(yīng),上位機(jī)接到此響應(yīng)則發(fā)出確認(rèn)申請(qǐng)命令,PLC則完成正確的讀寫(xiě)響應(yīng),回應(yīng)給上位機(jī)數(shù)據(jù)。這樣收發(fā)兩次數(shù)據(jù),完成一次數(shù)據(jù)的讀寫(xiě)[5]。

       其通訊數(shù)據(jù)報(bào)文格式大致有以下幾類:

       1、讀寫(xiě)申請(qǐng)的數(shù)據(jù)格式如下:
SD LE LER SD DA SA FC DASP SSAP DU FCS ED
SDStart Delimiter)開(kāi)始定界符(68H)
LE:(Length)報(bào)文數(shù)據(jù)長(zhǎng)度
LER:(Repeated Length)重復(fù)數(shù)據(jù)長(zhǎng)度
SD: (Start Delimiter)開(kāi)始定界符(68H)
SA:(Source Address)源地址,指該地址的指針,為地址值乘以8
DA:(Destination Address)目標(biāo)地址,指該地址的指針,為地址值乘以8
FC:(Function Code)功能碼
DSAP:(Destination Service Access Point)目的服務(wù)存取點(diǎn)
SSAP:(Source Service Access Point)源服務(wù)存取點(diǎn)
DU:(Data Unit)數(shù)據(jù)單元
FCS:(Frame Check Sequence)校驗(yàn)碼
ED:(End Delimiter)結(jié)束分界符(16H)
       報(bào)文數(shù)據(jù)長(zhǎng)度和重復(fù)數(shù)據(jù)長(zhǎng)度為自DA至DU的數(shù)據(jù)長(zhǎng)度,校驗(yàn)碼為DA至DU數(shù)據(jù)的和校驗(yàn),只取其中的末字節(jié)值。

       在讀寫(xiě)PLC的變量數(shù)據(jù)中,讀數(shù)據(jù)的功能碼為 6CH,寫(xiě)數(shù)據(jù)的功能碼為 7CH。

       2、PLC接收到讀寫(xiě)命令,校驗(yàn)后正確,返回的數(shù)據(jù)格式為 E5H

       3、確認(rèn)讀寫(xiě)命令的數(shù)據(jù)格式為:
SD SA DA FC FCS ED
其中SD為起始符,為10H
SA為數(shù)據(jù)源地址
DA為目的地址
FC為功能碼,取5CH
FCS為SA+DA+FC的和的末字節(jié)
ED為結(jié)束符,取16H

       PPI協(xié)議的軟件編制

       在采用上位機(jī)與PLC通訊時(shí),上位機(jī)采用VB編程,計(jì)算機(jī)采用PPI電纜或普通的485串口卡與PLC的編程口連接,通訊系統(tǒng)采用主從結(jié)構(gòu),上位機(jī)遵循PPI協(xié)議格式,發(fā)出讀寫(xiě)申請(qǐng),PLC返回相應(yīng)的數(shù)據(jù)。程序?qū)崿F(xiàn)如下:

      1、串口初始化程序:
MSComm1.CommPort = 1
MSComm1.Settings = "9600,e,8,1"
MSComm1.InputLen = 0
MSComm1.RThreshold = 1
MSComm1.InputMode = comInputModeBinary
PPI協(xié)議定義串口為以二進(jìn)制形式收發(fā)數(shù)據(jù),這樣報(bào)文的通訊效率比ASCII碼高。

       2、串口讀取數(shù)據(jù)程序,以讀取VB100數(shù)據(jù)單元為例:
Dim Str_Read(0 To 32) ‘定義發(fā)送的數(shù)據(jù)為字節(jié)為元素的數(shù)組。
Str_ Read (32) = &H16 ‘相應(yīng)的數(shù)組元素賦值,按照以下格式:
Str_ Read (29) = (100*8) \ 256 ‘地址為指針值,先取高位地址指針
Str_ Read (30) = (100*8) Mod 256 ‘取低位地址指針
Str_ Read (24) = 1 ‘讀取的數(shù)據(jù)長(zhǎng)度(Byte的個(gè)數(shù))
For I=4 to 30
Temp_FCS = Temp_FCS + Str_Read(i)
Next I
Str_Read(31)= Temp_FCS Mod 256 ‘計(jì)算FCS校驗(yàn)碼,其它數(shù)組元素賦值省略。
68 1B 1B 68 2 0 6C 32 1 0 0 0 0 0 E 0 0 4 1 12 A 10 2 0 1 0 1 84 0 3 20 8B 16
       PLC返回?cái)?shù)據(jù) E5 后,確認(rèn)讀取命令,發(fā)送以下數(shù)據(jù):
10 2 0 5C 5E 16
       然后上位機(jī)VB程序接受到以下數(shù)據(jù):
68 16 16 68 0 2 8 32 3 0 0 0 0 0 2 0 5 0 0 4 1 FF 4 0 8 22 78 16
       首先識(shí)別目標(biāo)地址和源地址,確認(rèn)是這次申請(qǐng)的返回?cái)?shù)據(jù),然后經(jīng)過(guò)校驗(yàn)檢查,正確后解析出第26號(hào)數(shù)據(jù)(&H22)即為VB100字節(jié)的數(shù)據(jù)。

       3、串口寫(xiě)入數(shù)據(jù)程序,以寫(xiě)VB100數(shù)據(jù)單元為例:
Dim Str_Write(0 To 37) ‘定義發(fā)送的數(shù)據(jù)為字節(jié)為元素的數(shù)組。
Str_Write (37) = &H16 ‘相應(yīng)的數(shù)組元素賦值,按照以下格式
Str_Write (35) = &H10 ‘要寫(xiě)入的數(shù)據(jù)值
68 20 20 68 2 0 7C 32 1 0 0 0 0 0 E 0 5 5 1 12 A 10 2 0 1 0 1 84 0 3 20 0 4 0 8 C B9 16
PLC返回?cái)?shù)據(jù) E5 后,確認(rèn)寫(xiě)入命令,發(fā)送以下數(shù)據(jù):
10 2 0 5C 5E 16

       然后上位機(jī)VB程序接受到以下數(shù)據(jù):
68 12 12 68 0 2 8 32 3 0 0 0 0 0 2 0 1 0 0 5 1 FF 47 16

       這是PLC正確接收并寫(xiě)入信息的返回?cái)?shù)據(jù)。

       4、串口接收程序:
       在數(shù)據(jù)接收程序中,利用VB中MSComm控件,一次接收緩沖區(qū)中的全部數(shù)據(jù),存放到數(shù)組形式的暫存單元中,然后分析每個(gè)元素的值,得到讀寫(xiě)的數(shù)據(jù)。
Dim RCV_Array() As Byte
Dim Dis_Array As String
Dim RCV_Len As Long
RCV_Array = MSComm1.Input ‘取出串口接收緩沖器的數(shù)據(jù)。
RCV_Len = UBound(RCV_Array)
ReDim Temp(0 To UBound(RCV_Array))
For i = 0 To RCV_Len
Dis_Array = Dis_Array & Hex(RCV_Array (i)) & " "
Next i
Text1.Text = Dis_Array ‘接收到的數(shù)據(jù)送顯示。
在程序的讀寫(xiě)過(guò)程中,一次最大可以讀寫(xiě)222個(gè)字節(jié),目前給出的數(shù)據(jù)讀寫(xiě)為整數(shù)格式。
數(shù)據(jù)類型 Str_ Read(27)
S 04H
SM 05H
I 81H
Q 82H
M 83H
V 84H

       以上程序,是以讀寫(xiě)PLC的V變量區(qū)為例,利用PPI協(xié)議還可以讀寫(xiě)S7-200PLC中的各種類型數(shù)據(jù),包括I、Q、SM、M、V、T、C、S等數(shù)據(jù)類型,能夠直接讀出以上變量中的位、字節(jié)、字、雙字等,其中讀位變量時(shí),是讀取該位所在的字節(jié)值,然后上位機(jī)自動(dòng)識(shí)別出該位的值。按照讀寫(xiě)的數(shù)據(jù)類型,其中Str_ Read(27)的值各不同:
在控制系統(tǒng)中,PLC與上位計(jì)算機(jī)的通訊,采用了PPI通訊協(xié)議,上位機(jī)每0.5秒循環(huán)讀寫(xiě)一次PLC。PLC編程時(shí),將要讀取的檢測(cè)值、輸出值等數(shù)據(jù),存放在PLC的一個(gè)連續(xù)的變量區(qū)中,當(dāng)上位機(jī)讀取PLC的數(shù)據(jù)時(shí),就可以一次讀出這組連續(xù)的數(shù)據(jù),減少數(shù)據(jù)的分次頻繁讀取。當(dāng)修改設(shè)定值等數(shù)據(jù)時(shí),進(jìn)行寫(xiě)數(shù)據(jù)的通訊操作。
本帖最近評(píng)分記錄:
  • 下載積分:+1(雨中螞蚱) 好貼好貼!
    xiaoqizi
    級(jí)別: 論壇先鋒
    精華主題: 0
    發(fā)帖數(shù)量: 448 個(gè)
    工控威望: 1318 點(diǎn)
    下載積分: 2406 分
    在線時(shí)間: 715(小時(shí))
    注冊(cè)時(shí)間: 2009-07-06
    最后登錄: 2025-05-10
    查看xiaoqizi的 主題 / 回貼
    1樓  發(fā)表于: 2012-04-16 20:56
    不錯(cuò),很強(qiáng)悍!很詳細(xì)!

    主站蜘蛛池模板: 做爰裸体激情2_午夜叫声理论片人人影院_亚洲视频在线观看免费_一区二区在线欧美日韩中文_伊人久久免费视频_亚洲综合成人专区片_久久久精品高清_国产精品亚洲片夜色在线 | 中文人字幕第三页_无码纯肉视频在线观看_99re国产在线播放_日本欧美高清全视频_日韩七区_亚洲第一最快AV网站_中日韩欧美风情视频_欧美成人一区二 | 思思99热久久精品在线6_久久久网页_精品国产91久久久久久久_精品国产一区二区三区不卡在线_精品亚洲永久免费精品91香蕉国产线_日韩三区免费_日本免费在线看片_91蜜桃婷婷狠狠久久综合9色 | 9热在线_日韩操穴_亚洲AV无码一区二区三区天堂网_亚洲AV永久无码嘿嘿嘿_飘雪影院在线观看免费版高清动漫_国产免费拔擦拔擦8x在线牛_亚洲欧洲自拍拍偷精品美利坚_久久人搡人人玩人妻精品 | 最近国产中文字幕_av在线免费播_亚洲裸男gv网站_www黄色毛片_四虎现在的网址是什么_欧美国产精品久久久乱码_亚洲一区二区三区四区在线免费观看_av美女网 | 精品午夜久久_色惰日本视频网站_夜色综合网_亚洲中文有码字幕青青_98成人网_亚洲精选av_国产一区影视_免费观看电视在线高清视频大全 | 特一级黄色_日本三级视频_国产91欧美_伊人午夜_午夜免费性福利_超碰在线人人草_亚洲日韩国产精品乱-久_中文字幕精品亚洲无线码VR | 欧美一区二区福利视频_国产av高潮社区_97国产香蕉_欧美日韩在线不卡_一本久草_久久精华液_成人免费午夜视频_国产99视频在线观看 | 五月丁香啪啪中文字幕_国产欧美日韩精品一区二区被窝_国产欧美校园小说在线_国产一区视频在线播放_久久精品视频99_欲帝精品福利视频导航_国产成人综合一区人人_黄色免费一级 | 一级黄色绿像片_曰韩精品无码_日本真人啪啪免费无遮挡_欧美一区二区久久久_亚洲精品92内射_乱子伦av无码中文字幕_视频,国产成人精品日本亚洲18_水莓100完全国产免费 | 欧美日产国产精品_av无码天堂一区二区三区,_欧美精品一区二_国产成人精品免费青青草原_国产精品无码久久AV不卡_亚洲全部视频_在线吸色_日产精品一二三区 | 国产精品无码免费专区午夜_日韩三级不卡_女性裸体啪啪网站_91高清免费观看_久久中文骚妇内射_激情综合久久_麻豆精品一区二区综合av_精品人妻无码一区二区三区蜜桃 | 日韩在线视频播放_国产九色_国产一精品一AV一免费爽爽_亚洲蜜臀av国产aⅴ综合小说_h在线播放_天天操精品视频_91精品精品_免费观看国产精品 | 国产91对白在线播放九色_欧美精品久久久久久久_国产男女爽爽爽免费视频_H无码精品动漫在线观看免费_国产一级毛片网站_国产免费乱淫av_四虎影视大全_中文字幕av一区二区三区高 | 成人在线观看中文字幕_91成人国产_免费观看a视频_国产精品一区二区三区在线看_国产一级免费av_yellow网站免费观看_国产精品美女高潮无套久久_亚欧美色 | 365看片在线成人_国产成人综合亚洲精品_一区视频在线播放_男女又爽又黄激情免费视频大_超级碰人人超碰超国产_后入到高潮免费观看_亚洲啪AV永久无码精品放毛片_操久久久 | 性迷宫法国_九色porny丨首页在线_中文字幕观看_俺来也官网欧美久久精品_www久久精品_欧美激情爱爱_成人免费一区二区_99精品国产福久久久久久 | 超高清日韩aⅴ大片美女图片_天天碰天天操视频_亚洲色欲色欲色欲www_久久丫精品国产亚洲AV不卡_久久天天躁狠狠躁夜夜av不卡_欧美av在线播放_国产美女裸露免费看视频_www.国产成人 | 超碰97人人人人人蜜桃_日韩不卡在线观看_国产又粗又猛又黄又爽的视频_男人亚洲天堂网_日本少妇xlxxx_午夜AV免费播放不卡三区_少妇做受xxxxⅹ高潮片_无码人妻精品一区二区三区欧美 | 亚洲欧洲日产国产av无码_亚洲网友自拍_永久免费的无码中文字幕_成在线人永久免费视频播放_aaa一区_日本教室三级在线看_国产成人精品大尺度在线观看_一本大道在线视频 | 91伦理视频在线观看_欧美爆乳乱妇高清免费_av无码av无码专区_国产一级做a爰片久久毛片男_日韩爱爱_台湾亚洲精品一区二区tv_国产无内肉丝精品视频_91精品国产综合久久久久蜜臀 | 在线观看高清视频免费网站_在线āv视频_国产一区二区三区四区五区精品_69国产在线观看_免费久草视频_少妇与大狼拘作爱性A片_狠狠干狠狠操_成人免费在线小视频 | 高清不卡免费视频_猛烈顶弄H禁欲老师H春潮视频_国产老肥熟精品大全_亚洲欧美成人a毛片_亚洲精品在_第一区免费在线观看_免费国产自久久久久三四区久久_亚洲男人的天堂网 | 久久精品视频在线免费观看_4438x成人网最大色成网站_久青草国产在线_a狠狠久久蜜臀婷色中文网_亚洲色图av在线播放_欧美久草在线_久久人妻无码AⅤ毛片A片麻豆_爱草视频在线 | 日本人浓密BBW_www.爱久久.com_国产高清精品一区_久久久久久久久久久福利观看_国产超碰在线播放_系列国产精品综合在线_翘臀后进少妇大白嫩屁股_国产无码不卡一区二区 | 国产淫片_中文在线一区二区_精品一区二区免费_日韩在线激情视频_亚洲色婷婷久久精品AV蜜桃_草草影院ccyycom_欧美日韩视频免费看_出租屋勾搭老熟妇啪啪 | 137日本免费肉体摄影_伊人365_日韩欧美一区二区在线_无码中文字幕VA精品影院_亚洲AV福利无码无一区二区_深夜影院在线观看_被黑人猛男连续高潮视频_aa国产精品 | 色综合91_久久国产精品成人片免费_香蕉视频污黄在线观看_无码人妻精品一区二区三区66_chinese勾搭videos_成人a免费_亚洲a成人午夜天堂_99影视在线视频免费观看 | 91性高潮久久久久久久_五月花激情网_二区三区国产_3344在线永久观看视频播放_一区二区三区四区AV_国产爆初菊在线观看免费视频网站_日韩在线一区二区三区免费视频_久久国产a | 欧美精品毛片久久久久久久_日韩人妻中文无码一区二区七区_久草最新在线_5566先锋影音夜色资源站在线观看_亚洲乱码国产乱码精品精可以看_国产精品呻吟高潮_成人看片黄A免费看那个网址_久久欧美AⅤ无码精品色午夜麻 国产成人一区二区三区影院动漫_国产成人在线视频免费观看_久久99女女久久99久久_www.久久爱.com狼人_国产又爽又刺激的视频_日韩中文在线观看_天天草天天爱_狠狠爱天天操 | JAPANESEXXXX日本熟妇伦视频_色哟哟网站在线观看_一区二区三区在线免费看_久久中文字幕人妻丝袜_jizzjizz國产免费a片_国产一区一一区高清不卡_91桃色在线看_国产91视频网 | 国产a∨国片精品jk制服_亚洲大片免费_欧美视频在线观看不卡_大陆av在线_91一区二区国产_136fldh福利免费视频观看_伊人91在线_又黄又爽又色又刺激的视频 | 91看片官网_欧美线人一区二区三区_九色视频少妇_免费精品国自产拍在线播放_日本黄色片aaaa_暖暖av_亚洲精品久久乱码水蜜桃摄影_中文字幕在线观看国产推理片 | 一级国产黄色毛片_蜜桃一区二区三区在线_黄瓜视频成人在线观看_91精产国品一二三区_日韩欧美国产专区_久久久久久午夜噜噜噜噜蜜臀av_亚洲高清无码加勒比_伸进她的小内裤里疯狂揉摸小说 | 久久天天躁狠狠躁夜夜97_午夜福利免费a片在线观看无码_日本乱人伦片中文三区_韩日自拍_夜夜爽夜夜叫夜夜高潮漏水_日本a在线_女人把腿张开男人来桶_夜色导航 | 亚洲最大成人av_国产精品一品二区三区在线观看_免费看a毛片_终极斗罗4第三季免费播放_国产乱码精品一区二区三区中文_四虎影院4hu_91精品国产综合久_国产男女视频在线 | 99国产欧美另娄久久久精品_国内自拍农村少妇在线观看_久久亚洲道色宗和久久_日本aⅴ大伊香蕉精品视频_亚洲国产欧美日韩欧美特级_日本视频免费在线观看_日日操影视_曰本女人牲交全视频免费播放 | 99re6热在线精品视频播放_免费看片日本_日本精品αv中文字幕_黄色欧美视频_中文字字幕在线一本通_美国一级黄色录像_中国老妇xxxx性开放_狠狠操很很干 | 91精品久久久久久蜜桃_萌白酱JK制服透明白丝喷水_国产精品线路一_久久国产精品人妻无码_久久精品国产亚洲AV无码偷窥_亚洲素人在线观看_日本免费一级高清婬日本片_中文字幕永久在线视频 | 国产精品夜夜春夜夜爽久久小_午夜影晥_xxxxwwww免费视频_在线成人自拍视频_亚洲一区二区三区精品在线观看_久久国产36精品色熟妇_美女裸身裸乳无遮挡网站_在线看片免费人成视频播 | 国产美足白丝榨精在线观看SM_久久国产精品香蕉绿巨人_国产精品久久久久久久久久免费看_无码国产精成人午夜视频一区二区_免费人成网站在线观看不卡_一区两区小视频_国产精品精品国产一区二区_被CAO的奶水直喷高H |