免费看aⅴ,天天插天天干天天射,呦女网,入逼逼

您現(xiàn)在的位置:智能制造網(wǎng)>技術(shù)中心>計算機(jī)與松下FP1系列可編程控制器的通信

直播推薦

更多>

企業(yè)動態(tài)

更多>

推薦展會

更多>

計算機(jī)與松下FP1系列可編程控制器的通信

2010年02月01日 11:29:40人氣:1090來源:

摘 要:本文介紹了松下公司PLC通信協(xié)議MEWTOCOL-COM,并在Windows下編程實現(xiàn)了松下FP1系列PLC與計算機(jī)的通信。
關(guān)鍵詞:通信協(xié)議 RS232 PLC
AbstractThe paper introduces the MEWTOCOL-COM communication protocol of NASI PLC.A small program in Windows is written to complete the communication between computer with NASI FP1 series PLC.
Key wordsCommunication Protocol RS232 PLC
分類號TN919 文獻(xiàn)標(biāo)識碼A 文章編號1606-51232002 06-0048-0
1 引 言
可編程控制器以下簡稱PLC 由于其高可靠性、編程簡單、通用性強(qiáng)、體積小、結(jié)構(gòu)緊湊、安裝維護(hù)方便等特點,而在工業(yè)控制中得到了廣泛應(yīng)用。由于計算機(jī)在圖形顯示、數(shù)據(jù)處理、打印報表、中文顯示等方面有很強(qiáng)的功能,因此在諸如柔性制造系統(tǒng)的現(xiàn)代化大型控制系統(tǒng)中常常將多臺PLC與計算機(jī)聯(lián)接起來構(gòu)成多級分布控制系統(tǒng)。在此類系統(tǒng)的構(gòu)成中,關(guān)鍵問題之一是如何實現(xiàn)PLC與計算機(jī)之間的通信。不同系列的PLC與計算機(jī)通信方式各不相同,本文以松下公司的FP1系列PLC為對象,分析了通信接口及通信協(xié)議,并在Windows 98Se中用Borland C++Bulider 5.0編制了一個簡單的通信程序。
2 松下FP1系列PLC與計算機(jī)之間的通信接口及通信協(xié)議
2.1 通信接口
FP1系列的通信接口采用標(biāo)準(zhǔn)9芯RS232接口,接線如圖1所示。
1  PC的RXD端與PLC的TXD端聯(lián)接,使PC接收到PLC發(fā)出的數(shù)據(jù)。
2  PC的TXD端與PLC的RXD端聯(lián)接,使PC發(fā)出的數(shù)據(jù)被PLC接收到。
3  PC與PLC的SG端互聯(lián),使兩者的工作基準(zhǔn)地電平相同。
4  PC與PLC的RTS端互聯(lián),PC在此引腳發(fā)出訊號, 通知
PLC可以向PC發(fā)送數(shù)據(jù)。
5  PC與PLC的CTS端互聯(lián),PLC在此引腳發(fā)出訊號,通知PLC可以向PC發(fā)送數(shù)據(jù)。
2.2 通信協(xié)議
松下FP1系列PLC與計算機(jī)之間的通信協(xié)議為松下公司的MEWTOCOL-COM協(xié)議。該協(xié)議采用異步通信方式,其波特率有1200、2400、4800、9600、19200、38400、57600、115200bps等多種可選,且報文長度可變可固定。該協(xié)議格式分為命令消息Command Message ,正常響應(yīng)消息Response Message-normal ,出錯響應(yīng)消息Response Message-error 三種。

其中,%為起始符,標(biāo)記每一幀報文的開始,CR為結(jié)束符,標(biāo)記每一幀報文的結(jié)束。
AD為PLC的站地址,為兩位16進(jìn)制數(shù),如00則表示*臺PLC。
#、$、標(biāo)注該幀報文為何種類型。
Command code為命令代碼,如后文的例1中的“RD”,表示讀數(shù)據(jù)區(qū)。Response code為響應(yīng)代碼一般返回接收到的命令消息中的命令代碼。ErrorH 和ErrorL 為出錯代碼,是兩位16進(jìn)制數(shù),可根據(jù)其值在協(xié)議中查出錯誤的描述。
Text code為命令參數(shù),如例1命令消息中“D0110501107”,“D”表示數(shù)據(jù)寄存器,“01105 01107”表示第1105號至1107號,而在例1響應(yīng)消息中,“6300 4433 0A00”則表示DT1105至DT1107中數(shù)據(jù)分別為6300、4433、0A00。
BCCH 和BCCL 為前面字符串的BCC校驗碼的高、低位,為兩位16進(jìn)制數(shù)。其初值為0,然后從起始符開始與該幀報文中每一字節(jié)按位進(jìn)行異或運算得到。
例1:讀取DT1105至DT1107中的數(shù)據(jù)的命令消息如下:
% 01 # RD D01105 01107 57 CR
若DT1105至DT1107中數(shù)據(jù)分別為6300、4433和0A00,PLC返回的響應(yīng)消息如下:
% 01 $ RD 6300 4433 0A00 62 CR
3 PC與松下FP1系列PLC通信的WINDOWS編程實現(xiàn)
在本程序中用到了MSCOMM32.OCX控件,該控件可在MS Visual Basic 6.0的光盤中找到,但需注冊,安裝一遍VB即可解決。
*步:C++Builder 5.0中導(dǎo)入MSCOMM32.OCX控件,新建一個Application。在其主窗體中添加一個MSComm控件,命名為MSComm1,并設(shè)置其屬性值。注意波特率及校驗方式要與PLC的設(shè)置一致。再添加一個Label控件和一個Button控件,分別命名為Labell和Buttonl。
第二步:在Buttonl的OnClick事件中添加如下代碼。
int i
AnsiString outs
Ole Variant buf
outs=″%01#RDD011050110757\r″∥設(shè)置命令消息
ifMSComml->PortOpen==false MSComml->PortOpen=true∥打開端口
buf=outs
MSComml->Output=buf
i=0
whilei<=10000000?。椋牎窝訒r,等待PLC發(fā)回響應(yīng)消息
outs=″″
buf=MSComml->Input∥接收響應(yīng)消息
outs=WideStringbuf 
ifouts=″″?。蹋幔猓澹欤欤荆茫幔穑簦椋铮睿剑铮酰簦螃?
else Labell->Cabell->"接收不到";
若想采用其它命令消息,則必須計算其BCC校驗碼,可采用如下函數(shù)實現(xiàn)。
AnsiString BCCProAnsiString ComdMesg 

unsigned char bcc
unsigned char*tempc
char ab
AnsiString BccH
AnsiString BccL
AnsiString temp
int bcc-int
int i
temp=ComdMesg
tempc=ComdMesg.c-str 
bcc=0
fori=0i< temp.Length i++?。猓悖悖蓿剑簦澹恚穑悚煟椁牔?
bcc-int=bcc
BccH=bcc-int/16
BccL=bcc-int%16
BccH=IntToHexBccH 
BccL=IntToHexBccL 
temp=ComdMesg+BccH+BccL+″\r″
return temp

使用這個函數(shù)便可將所有你要發(fā)送的命令消息自動加上兩位16進(jìn)制BCC碼和結(jié)束符。
4 結(jié) 論
本文所有程序均在Windows 98SeBorland C++Bulider 5.0環(huán)境中調(diào)試通過,并多次長時間運行測試,以驗證其準(zhǔn)確性與穩(wěn)定性,收到了令人滿意的效果,通信十分穩(wěn)定可靠。讀者可在本文的基礎(chǔ)上,參考松下公司的MEWTOCOL-COM協(xié)議,便可輕松實現(xiàn)PC與松下FP1系列PLC的通信,以完成上位機(jī)對PLC的監(jiān)視與控制。
全年征稿/資訊合作 聯(lián)系郵箱:1271141964@qq.com

免責(zé)聲明

  • 凡本網(wǎng)注明"來源:智能制造網(wǎng)"的所有作品,版權(quán)均屬于智能制造網(wǎng),轉(zhuǎn)載請必須注明智能制造網(wǎng),http://www.caslcampaign.com。違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
  • 企業(yè)發(fā)布的公司新聞、技術(shù)文章、資料下載等內(nèi)容,如涉及侵權(quán)、違規(guī)遭投訴的,一律由發(fā)布企業(yè)自行承擔(dān)責(zé)任,本網(wǎng)有權(quán)刪除內(nèi)容并追溯責(zé)任。
  • 本網(wǎng)轉(zhuǎn)載并注明自其它來源的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品來源,并自負(fù)版權(quán)等法律責(zé)任。
  • 如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

<
更多 >

工控網(wǎng)機(jī)器人儀器儀表物聯(lián)網(wǎng)3D打印工業(yè)軟件金屬加工機(jī)械包裝機(jī)械印刷機(jī)械農(nóng)業(yè)機(jī)械食品加工設(shè)備制藥設(shè)備倉儲物流環(huán)保設(shè)備造紙機(jī)械工程機(jī)械紡織機(jī)械化工設(shè)備電子加工設(shè)備水泥設(shè)備海洋水利裝備礦冶設(shè)備新能源設(shè)備服裝機(jī)械印染機(jī)械制鞋機(jī)械玻璃機(jī)械陶瓷設(shè)備橡塑設(shè)備船舶設(shè)備電子元器件電氣設(shè)備


我要投稿
  • 投稿請發(fā)送郵件至:(郵件標(biāo)題請備注“投稿”)1271141964.qq.com
  • 聯(lián)系電話0571-89719789
工業(yè)4.0時代智能制造領(lǐng)域“互聯(lián)網(wǎng)+”服務(wù)平臺
智能制造網(wǎng)APP

功能豐富 實時交流

智能制造網(wǎng)小程序

訂閱獲取更多服務(wù)

微信公眾號

關(guān)注我們

抖音

智能制造網(wǎng)

抖音號:gkzhan

打開抖音 搜索頁掃一掃

視頻號

智能制造網(wǎng)

公眾號:智能制造網(wǎng)

打開微信掃碼關(guān)注視頻號

快手

智能制造網(wǎng)

快手ID:gkzhan2006

打開快手 掃一掃關(guān)注
意見反饋
關(guān)閉
企業(yè)未開通此功能
詳詢客服 : 0571-87858618