91黄动漫 I 欧美 日韩 国产 成人 在线 I a级成人毛片 I 农村黄色片 I 男生捅女生的肌肌 I 精品99一区二区三区 I 妃光莉av I 日日夜夜操操 I 性中国古装videossex I 久久不卡av I 美女高潮动态图 I 极品美女开粉嫩精品 I 牛牛精品一区二区 I 91精品福利视频 I 成人刺激视频 I 91国内精品视频 I 中国一级特黄毛片大片 I 校长狠狠挺进校花体内小说 I 欧美激情黄色片 I 欧美久久久一区 I 爱豆国产剧免费观看大全剧苏畅 I 麻豆国产人妻欲求不满谁演的 I 亚洲一区二区在线免费观看视频 I 国产超碰av人人做人人爽 I 精品国产第一国产综合精品 I 久久免费看av I 欧美一区二区三区白人 I 国产精品夫妻激情 I 校花被肉干高h潮不断 I 欧美最猛黑人xxxx黑人表情 I 国产欧美日韩一区二区搜索 I 极品女神露脸呻吟啪啪 I 人人天天久久 I 亚洲动漫在线 I 日本91福利区 I 五月天 桃色 开心 I av在线免费观看国产 I 男人添女人的免费视频 I 夜夜穞天天穞狠狠穞

會(huì)飛的怪獸
自信 自立 自強(qiáng)
級(jí)別: 工控俠客
精華主題: 0
發(fā)帖數(shù)量: 226 個(gè)
工控威望: 2112 點(diǎn)
下載積分: 4779 分
在線時(shí)間: 684(小時(shí))
注冊(cè)時(shí)間: 2013-01-17
最后登錄: 2026-03-12
查看會(huì)飛的怪獸的 主題 / 回貼
樓主  發(fā)表于: 2013-01-17 12:30
西門(mén)子自由口通訊程序(注釋很詳細(xì),有興趣的可以參考一下)
S7-200可編程控制器與微機(jī)通信之設(shè)計(jì)和實(shí)現(xiàn)
介紹了S7-222 通信方式,著重闡述了自由口通信 參數(shù)設(shè)定、協(xié)議規(guī)劃和通信程序設(shè)計(jì)。
  可編程控制器(PLC)作為一種高性能 工業(yè)現(xiàn)場(chǎng)控制裝置,已廣泛地用于工業(yè)控制 各個(gè)領(lǐng)域。目前,工業(yè)自動(dòng)控制對(duì)PLC 網(wǎng)絡(luò)通信能力要求越來(lái)越高, PLC與上位機(jī)之間、PLC與PLC之間都要能夠進(jìn)行數(shù)據(jù)共享和控制。
  飛剪控制系統(tǒng)要求 遠(yuǎn)離PLC 控制室里,實(shí)時(shí)監(jiān)控電機(jī)、供紙、刀輥等設(shè)備。上位機(jī)為普通PC機(jī),下位機(jī)為 SIEMENS S7-222 PLC。 實(shí)際開(kāi)發(fā)中,采用自由口通信模式,自定義 PC與 PLC 通信協(xié)議,用Step7編寫(xiě)PLC端 通信程序,而  PC端用VC6.0實(shí)現(xiàn)串行通信的控制和監(jiān)控界面的顯示。
2.通信方式及原理
  S7-200系列PLC通信方式有三種:一種是點(diǎn)對(duì)點(diǎn)(PPI)方式,用于與西門(mén)子公司 PLC編程器或其它產(chǎn)品通信,其通信協(xié)議是不公開(kāi) 。另一種為DP方式,這種方式使 PLC可通過(guò)Profibus DP通信接口接入現(xiàn)場(chǎng)總線網(wǎng)絡(luò), 擴(kuò)大PLC 使用范圍。最后一種方式是自由口(FreePort)通信方式,由用戶(hù)定義通信協(xié)議,實(shí)現(xiàn)PLC與外設(shè) 通信。本系統(tǒng)中采用自由口通信方式。它是S7-200系列PLC一個(gè)很有特色 功能。這種方式不需要增加投資,具有較好 靈活性,適合小規(guī)模控制系統(tǒng)。自由口通信 物理接口上要求雙方都使用RS485接口,波特率最高為38400bps。雖然PC機(jī) 標(biāo)準(zhǔn)串口為RS232,但西門(mén)子公司提供 PC/PPI電纜帶有RS232 /RS485電平轉(zhuǎn)換器,因此在不增加任何硬件 情況下,可以很方便地將PLC和PC機(jī)互聯(lián)。
  2.1自由口模式的初始化
  PLC 自由口模式通信編程首先是對(duì)串口初始化。對(duì)S7-200PLC 初始化是通過(guò)對(duì)特殊存儲(chǔ)字節(jié)SMB30(端口0)寫(xiě)入通信控制字,來(lái)設(shè)置通信的波特率、奇偶校驗(yàn)、停止位和數(shù)據(jù)位數(shù)。顯然,這些設(shè)定必須與上位機(jī)設(shè)定值相一致。另外還可選擇通信模式和主從站模式,各具體存儲(chǔ)位內(nèi)容可參考SIMATIC S7-200系統(tǒng)手冊(cè)。
  2.2自由口模式下收發(fā)數(shù)據(jù)
  初始化自由端口通信模式后,就可以進(jìn)行數(shù)據(jù)的收發(fā)。
  (1) 發(fā)送數(shù)據(jù)指令 XMT
  格式:XMT Table,Port。可以用 XMT指令發(fā)送數(shù)據(jù),XMT指令激活發(fā)送緩沖區(qū)(從Table開(kāi)始 變量存儲(chǔ)區(qū))中的數(shù)據(jù)。數(shù)據(jù)緩沖區(qū) 第一個(gè)數(shù)據(jù)指明了要發(fā)送 字節(jié)數(shù),Port指明了用于發(fā)送 端口,緩沖區(qū)最多可以有255個(gè)字符。在發(fā)完緩沖區(qū) 最后一個(gè)字符時(shí),會(huì)產(chǎn)生一個(gè)中斷 (對(duì)端口 0為中斷事件9)。本例 XMT緩沖區(qū) 格式如表1。其中,狀態(tài)字節(jié)表示PLC是否正確接收了上位機(jī)所傳數(shù)據(jù);上傳數(shù)據(jù)為PLC上傳給PC 數(shù)據(jù),需將9字節(jié) 16進(jìn)制數(shù)編碼為18字節(jié) ASIIC碼,所以字節(jié)數(shù)為18;BCC為上傳數(shù)據(jù) 異或和,同樣將16進(jìn)制數(shù)編碼為ASIIC碼;結(jié)束字符的值為26。
  
表1 發(fā)送緩沖區(qū)

表2 接收緩沖區(qū)
  RCV Table,Port。用 RCV指令接收最多為255個(gè)字符的數(shù)據(jù),這些字符存儲(chǔ) 緩沖區(qū)中。在接收到結(jié)束字符時(shí),會(huì)產(chǎn)生一個(gè)中斷(對(duì)端口 0為中斷事件23)。本例的RCV緩沖區(qū) 格式如表2。其中,命令類(lèi)型表示上位機(jī)讓PLC 執(zhí)行什么操作,如讀或?qū)?目標(biāo)站號(hào)是分配給PLC 一個(gè)代號(hào);起始地址是PLC要進(jìn)行讀寫(xiě)的存儲(chǔ)區(qū)的起始地址;讀寫(xiě)字節(jié)數(shù)是PLC接到命令后,對(duì)存儲(chǔ)區(qū)進(jìn)行讀寫(xiě)的字節(jié)數(shù),本例中最多寫(xiě)入16字節(jié)、讀出9字節(jié);寫(xiě)入數(shù)據(jù)是上位機(jī)要寫(xiě)入PLC的數(shù)據(jù), 讀命令不起作用;BCC是從命令類(lèi)型開(kāi)始到寫(xiě)入數(shù)據(jù)為止的43字節(jié)數(shù)據(jù) 異或和。從目標(biāo)站號(hào)到BCC這幾項(xiàng)內(nèi)容,都是把16進(jìn)制數(shù)編碼為ASIIC碼來(lái)表示的。
3.自由口通信程序設(shè)計(jì)
  通信程序 設(shè)計(jì)需遵循一定的規(guī)則,如中斷通信處理程序要短小精悍、要避免XMT與RCV指令同時(shí)在一個(gè)端口執(zhí)行等。整個(gè)PLC通信程序包括主程序、通信初始化子程序、校驗(yàn)子程序、讀寫(xiě)數(shù)據(jù)子程序和發(fā)送完成、接收完成中斷服務(wù)程序。
  3.1主程序
  通信主程序是PLC實(shí)現(xiàn)接收、發(fā)送功能 主框架。其主要流程為查詢(xún)接收是否完成,校驗(yàn),再根據(jù)類(lèi)型執(zhí)行讀、寫(xiě)等操作。它的用是控制程序的流程,校驗(yàn)、讀寫(xiě)等具體工作由相應(yīng)的程序完成。流程如圖1。
  3.2通信初始化程序
  通信初始化子程序設(shè)置自由口通信的關(guān)參數(shù),對(duì)接收信息控制寄存器SMB87寫(xiě)入控制字,定義起始字符、結(jié)束字符和接收超時(shí)。設(shè)好自由口模式的些參數(shù)后,還要連接中斷事件和中斷服務(wù)程序,并打開(kāi)中斷。最后,把接收、發(fā)送緩沖區(qū)寫(xiě)入初值即可。
  3.3校驗(yàn)子程序
  每次PLC接收完1幀數(shù)據(jù),就調(diào)用此子程序進(jìn)行校驗(yàn)。進(jìn)入子程序后,先清除接收完成標(biāo)志位,再計(jì)算所接收數(shù)據(jù) 校驗(yàn)和BCC。如果正確,還要檢驗(yàn)結(jié)束字符是否為‘G’。不是的話,說(shuō)明數(shù)據(jù)報(bào)文長(zhǎng)度不對(duì)或傳輸過(guò)程中發(fā)生了錯(cuò)誤,需要向上位機(jī)返回相應(yīng) 出錯(cuò)信息。流程如圖2。
  
圖1 主程序流程圖

圖2 校驗(yàn)子程序流程圖
  3.4讀、寫(xiě)數(shù)據(jù)子程序
  這2個(gè)子程序 任務(wù)是把PLC存儲(chǔ)區(qū)中 數(shù)據(jù)發(fā)給上位機(jī)或把上位機(jī)傳來(lái) 數(shù)據(jù)寫(xiě)入PLC存儲(chǔ)區(qū)。二者 流程相似,只是數(shù)據(jù)流向不同。進(jìn)入子程序后,先停止接收,然后完成數(shù)據(jù)傳輸,最后發(fā)送應(yīng)答報(bào)文。不同之處就是應(yīng)答報(bào)文中的狀態(tài)字節(jié):讀操作時(shí)是1、寫(xiě)操作時(shí)是2。
  3.5接收、發(fā)送完成中斷服務(wù)程序
  當(dāng)PLC接收到結(jié)束字符后產(chǎn)生中斷(事件號(hào)9)或數(shù)據(jù)發(fā)送結(jié)束后產(chǎn)生中斷(事件號(hào)23),這兩個(gè)服務(wù)程序被執(zhí)行。接收完,先把接收完標(biāo)志置1,然后再次啟動(dòng)接收。發(fā)送完,先清除校驗(yàn)正確標(biāo)志,再把接收緩沖區(qū)中的結(jié)束字符和計(jì)算出的接收BCC結(jié)果清零,最后再次啟動(dòng)接收。
  由于是半雙工通信,因此PLC無(wú)論是發(fā)送和接收完數(shù)據(jù)后,都必須將通信口設(shè)置成接收狀態(tài)。否則,PLC就接收不到任何數(shù)據(jù)了。
4.上位機(jī) 通信編程
  上位機(jī)通過(guò)RS232口與PLC進(jìn)行通信,Windows環(huán)境串口通信程序利用VC6編寫(xiě)。VC6編寫(xiě)串口通信程序通常有MSCOMM控件和通信API兩種方法。二者各有優(yōu)缺點(diǎn)。MSCOMM控件封裝了微機(jī)串口通信的基本功能,使用者只需設(shè)置一些基本參數(shù),就可以 串口收發(fā)數(shù)據(jù)了。這種方法簡(jiǎn)單,易于編程人員使用,現(xiàn) 已有很多例子供參考。用通信API編寫(xiě)串口程序相對(duì)復(fù)雜一些。開(kāi)發(fā)者要直接使用Windows提供 一組API函數(shù)來(lái)完成上述控件封裝好 功能。 使用API編程比使用控件更復(fù)雜,但同時(shí)也更靈活。通信控件已經(jīng)封裝好 功能是無(wú)法改變 ,而使用API就能針對(duì)通信協(xié)議編寫(xiě)效率更高的代碼。
   飛剪控制系統(tǒng)的上位機(jī)程序中,使用通信API編寫(xiě)了串口讀寫(xiě)的模塊。接收時(shí),程序要查找起始字符‘g’,以確定1幀數(shù)據(jù) 開(kāi)始;再根據(jù)下一個(gè)狀態(tài)字節(jié)判斷通信的正確性;最后,把長(zhǎng)度為23字節(jié) 數(shù)據(jù)幀接收好,并準(zhǔn)備接收下一幀。發(fā)送過(guò)程不用判斷數(shù)據(jù)內(nèi)容,執(zhí)行發(fā)送函數(shù)即可。需要注意的是:由于 PLC通信口是半雙工的,所以在PLC向上位機(jī)上傳數(shù)據(jù)時(shí),上位機(jī)要等1幀數(shù)據(jù)接收完畢,再執(zhí)行發(fā)送操作,以避免收發(fā)沖突。
  
圖3 上位機(jī)串口通信流程圖
  本系統(tǒng)取PC機(jī)和PLC各自的特點(diǎn),實(shí)現(xiàn)了對(duì)飛剪系統(tǒng) 實(shí)時(shí)監(jiān)控。 利用PLC(下位機(jī) )的自由口通信協(xié)議和上位機(jī)的VC開(kāi)發(fā)工具,可以方便地開(kāi)發(fā)出PC機(jī)和PLC通信應(yīng)用軟件。這種方法節(jié)省投資,對(duì)小規(guī)模 系統(tǒng)極具現(xiàn)實(shí)意義。系統(tǒng)具有實(shí)時(shí)性好、速度快、可靠性高、操作方便等優(yōu)點(diǎn),達(dá)到了預(yù)期 效果。經(jīng)現(xiàn)場(chǎng)調(diào)試及運(yùn)行表明,該系統(tǒng)適合于飛剪系統(tǒng)的實(shí)時(shí)監(jiān)控。
[ 此帖被liusenedc在2013-01-17 12:45重新編輯 ]
附件: 自由口通訊.zip (5 K) 下載次數(shù):4096
本帖最近評(píng)分記錄:
  • 下載積分:+1(15039070327)
  • 下載積分:+1(wzb2015) 謝謝樓主的分享!
  • 下載積分:+5(ysz0377) 好人!
  • 下載積分:+2(jxycomliu) 感謝!
  • 熟悉三菱、信捷、臺(tái)達(dá)、歐姆龍等多種PLC編程,威綸、三菱、顯控等觸摸屏設(shè)計(jì)和自動(dòng)化系統(tǒng)設(shè)計(jì), 承接各種非標(biāo)自動(dòng)化設(shè)備的PLC程序開(kāi)發(fā),長(zhǎng)期為客戶(hù)提供整套自動(dòng)化方案,深圳或珠三角地區(qū),歡迎加QQ 908643454
    qjywzs
    級(jí)別: 略有小成
    精華主題: 0
    發(fā)帖數(shù)量: 91 個(gè)
    工控威望: 264 點(diǎn)
    下載積分: 20538 分
    在線時(shí)間: 151(小時(shí))
    注冊(cè)時(shí)間: 2007-07-26
    最后登錄: 2025-11-26
    查看qjywzs的 主題 / 回貼
    1樓  發(fā)表于: 2013-11-14 19:17
    學(xué)習(xí)了,謝謝

    主站蜘蛛池模板: 久久久久夜色精品国产老牛91 | 久久精品国产福利一区二区 | 国产日产欧洲无码视频无遮挡 | 2021国产精品成人免费视频 | 亚洲另类激情综合偷自拍图 | 午夜成年奭片免费观看 | 激情五月中文字幕 | 国产裸体永久免费视频网站 | 7777久久久国产精品消防器材 | 女人性做爰100部免费 | 九九热超碰 | 内射小寡妇无码 | 免费午夜福利不卡片在线播放 | 日本一区二区成人 | 在线观看不卡一区 | 日韩天天干| 色喜国模李晴超大尺度 | 日本欧美三级 | 日韩在线第三页 | 亚洲 丝袜 另类 校园 欧美 | 午夜性生活片 | 天天躁日日躁狠狠躁婷婷 | 亚洲一区二区三区四区视频 | 激情超碰在线 | 国产美女亚洲精品久久久毛片小说 | 曰的好深好爽好紧的视频 | 欧美黄色图 | aaaaa爽爽爽久久久 | 99久热re在线精品99re8热视频 | 越南三级dvd在线播放 | 4399理论片午午伦夜理片 | 色乱码一区二区三区麻豆 | 99热精品久久只有精品 | 日韩av无码一区二区三区 | a级淫片一二三区在线播放 国产成人无码a区视频 | 国产成人精品视频一区二区不卡 | 久久国产免费福利永久 | 免费在线观看a视频 | 日日摸夜夜摸狠狠摸婷婷 | 91在线视频精品 | 欧美一区二区三区婷婷月色 | 大帝a∨无码视频在线播放 精品产国自在拍 | 色女人综合 | 2019最新久久久视频精品 | 欧美成人精品三级在线观看播放 | 综合网伊人 | 日韩精品电影综合区亚洲 | 国产亚洲精品久久久久久小说 | 亚洲一区二区三区在线观看精品中文 | 国产精品成人在线视频 | 成人做爰www免费看视频网战 | 久久受 | 日韩av在线观看免费 | 人与性动交aaaabbbb | 日韩欧美精品中文字幕 | 中文字幕超清在线免费 | 国产精品女优 | 亚洲欧洲综合网 | 国产精品一区二区国产主播 | 人妻无码中文字幕永久在线 | 99热999 | 亚洲理论在线中文字幕观看 | 国产又色又爽又黄的免费 | 午夜少妇福利视频 | 亚洲男人第一无码av网站 | 成人啪啪18免费网站 | 天堂√在线中文官网在线 | 免费无码av片在线观看播放 | 精品无人区麻豆乱码1区2区 | 国产做受69高潮视频 | 国产莉萝无码av在线播放 | 欧美一区二区网站 | 国产人妻人伦精品 | 国产精品床戏女高潮原声 | 果冻传媒18禁免费视频 | www.av日韩 | 国产乡下妇女做爰视频 | 色乱码一区二区三在线看 | 日本视频三区 | 在线观看国产精品普通话对白精品 | 久久久高潮 | 日韩一区二区三区视频在线 | 色综合综合色 | 窝窝午夜色视频国产精品破 | 日韩免费视频一区二区 | 日产精品卡2卡三卡乱码网址 | 风间由美乳巨码无在线 | 九九九九九少妇爽黄大片 | 久草中文视频 | 成人av不卡 | 亚洲国产精品久久网午夜 | 中文字幕无码精品亚洲资源网 | 精品国产福利在线视频 | 欧美日韩国语 | 国产放荡对白视频在线观看 | 欧美巨大性爽欧美精品 | 99久久国产亚洲高清观看 | 国产亚洲曝欧美精品手机在线 | 亚洲蜜桃精久久久久久久 |