成人精品一区二区久久久 I 国产美女永久无遮挡 I 中文字幕+乱码+中文字幕明步 I 国产在视频一区二区三区吞精 I 日韩精品小视频 I 成人性生交大片免费4 I 免费aaa级毛片在线视频 I 一级片毛片 I 大型成人社区 I 国模在线播放 I 欧美大荫蒂毛茸茸视频 I 偷偷色噜狠狠狠狠的777米奇 I www.久久亚洲 I 日日搞夜夜操 I 亚洲成色777777女色窝 I 毛片黄色毛片 I 午夜片在线观看 I 国产一区二区三区中文字幕 I 天天干夜夜骑 I 日韩在线视频一区二区三区 I 久久久无码精品亚洲a片0000 I 写真福利片hd在线播放 I 欧美成人一区二免费视频 I 色噜噜狠狠爱综合视频 I 中文字幕无线码免费人妻 I 国产精品久久久久久久久久不蜜臀 I 欧美综合人人做人人爱 I 1024成人网色www I 国产精品视频一二三区 I 亚洲免费美女视频

wjun7610
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 110 個
工控威望: 249 點
下載積分: 708 分
在線時間: 35(小時)
注冊時間: 2007-09-16
最后登錄: 2025-07-30
查看wjun7610的 主題 / 回貼
樓主  發(fā)表于: 2013-04-13 12:43
S7200_PPI動態(tài)庫DLL+實例.rar (490 K) 下载次数:1921    S7200_PPI.dll V3.2 通信協(xié)議串口通訊動態(tài)鏈接庫DLL(以下簡稱DLL),是為滿足工業(yè)通信需要,

針對工業(yè)領(lǐng)域要求上位機對西門子S7-200系列PLC通訊實時采集與控制的組態(tài)編程而設(shè)計。

本DLL是采用Delphi語言開發(fā)的標準串口通訊庫,具有以下特點:

1)、遵循西門子PLC的PPI通訊協(xié)議;

2)、支持多串口并發(fā)操作,支持多線程串口通訊,將串口通訊對主程序的影響降至最低;

3)、實時性、可靠性好,通用性強;

4)、適用于多PLC(下位機)聯(lián)網(wǎng)和上位機通信,滿足多方面的需要;

5)、函數(shù)接口功能全,操作簡單,支持PPI通訊協(xié)議的絕大部分地址的讀寫功能函數(shù);

6)、支持USB、PC擴展卡等擴展串口號;

7)、支持多種操作系統(tǒng)win9x/win2000/winXP(標準Win32 DLL);

8)、易于快速開發(fā)(VC等非RAD開發(fā)環(huán)境的開發(fā));

9)、更新原有函數(shù)調(diào)用方式采用數(shù)組調(diào)用數(shù)據(jù)發(fā)生與接收,初學(xué)者快速入門;

10)、可在多種編程環(huán)境下使用,例如VB、VC、Delphi、PB、Labview、易語言等開發(fā)環(huán)境;

11)、擴展了函數(shù)功能讀取下位機中的雙字、單精度浮點等類型數(shù)據(jù),更加符合工業(yè)自動化領(lǐng)域的工控軟件的開發(fā)。

軟件版本更新及相關(guān)說明:

S7200_PPI.dll V3.2 串口通訊鏈接庫,實現(xiàn)了對S7-200系列PLC的I、Q、M、V、S、、SM、C、T區(qū)軟元件的讀寫功能

wangjun于2008年在原有S7200_PPI.dll V2.0版基礎(chǔ)上的更新版,重寫了函數(shù)結(jié)構(gòu),采用數(shù)據(jù)接收和發(fā)送緩沖區(qū)

(數(shù)組)方式傳遞,讀出和寫入單元數(shù)據(jù)使用更方便。對于16位整數(shù)和32位整數(shù)讀取寫入均按有符號整數(shù)處理,

小數(shù)的返回按單精度浮點型(2進制浮點)處理讀取方式。提供擴展功能函數(shù),方便用戶實現(xiàn)混合數(shù)據(jù)讀取。

能夠同時滿足32個串口并發(fā)情況下的正常使用。

S7200_PPI.dll V3.2 分為完美版和單機版兩個版本。

注意:實例在使用時不能超出試用版的地址限制,否則無法正確通訊。

龍帥工作室為您提供專業(yè)串口通訊控件,也可為您訂制

專用通訊協(xié)議串口控件。目前龍帥系列串口通訊協(xié)議

控件包括modbus_rtu、modbus_tcp、三菱FX PLC編程口、

歐姆龍HostLink、西門子PPI等多個系列產(chǎn)品。

淘寶店:http://shop34821629.taobao.com

電  話:13912935690

騰訊QQ:157610979

阿里旺旺: wj_longshuai

郵  箱:157610979@QQ.com        

        wjun7610@yahoo.com.cn

        chinawanglong@163.com
[ 此帖被wjun7610在2013-04-13 15:03重新編輯 ]
wjun7610
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 110 個
工控威望: 249 點
下載積分: 708 分
在線時間: 35(小時)
注冊時間: 2007-09-16
最后登錄: 2025-07-30
查看wjun7610的 主題 / 回貼
1樓  發(fā)表于: 2013-04-13 12:47
DLL串口操作函數(shù)包括:

  1)、S7200ComOpen打開串口;

  2)、S7200ComClose關(guān)閉串口;
      
  3)、S7200SetDelay串口通訊延時設(shè)定;
                    
  4)、S7200ComTrue判斷串口是否打開成功;
            
  5)、S7200ComWork判斷串口是否正在工作中;

S7200 PPI協(xié)議功能函數(shù):

  1)、S7200BitRead    位讀取函數(shù)

  2)、S7200ByteRead   字節(jié)讀取函數(shù)

  3)、S7200WordRead   字讀取函數(shù)

  4)、S7200DwordRead  雙字讀取函數(shù)

  5)、S7200FloatRead  浮點讀取函數(shù)

  6)、S7200BitWrite   位賦值函數(shù)

  7)、S7200ByteWrite  字節(jié)賦值函數(shù)

  8)、S7200WordWrite  字賦值函數(shù)

  9)、S7200DwordWrite 雙字賦值函數(shù)

10)、S7200FloatWrite 浮點賦值函數(shù)

11)、S7200BitEWrite  元件強制賦值函數(shù)

12)、S7200EbitCancel 取消位元件強制值函數(shù)

13)、S7200PlcRun     置PLC為運行模式

14)、S7200PlcStop    置PLC為停止模式

S7200 PPI協(xié)議DLL緩沖區(qū)傳遞功能函數(shù)包括:

  1)、S7200ClearBuf         清除復(fù)位DLL緩存區(qū)

  2)、S7200ByteReadBuf      字節(jié)讀取函數(shù)  

  3)、S7200WordReadBuf      字讀取函數(shù)

  4)、S7200DwordReadBuf     雙字讀取函數(shù)  

  5)、S7200IntDllBufRead    讀DLL整數(shù)緩存區(qū)值;
  
  6)、S7200FloatReadBuf     浮點讀取函數(shù)

  7)、S7200FloatDllBufRead  讀DLL浮點緩存區(qū)值;

  8)、S7200WriteIntDllBuf   寫DLL整數(shù)緩存區(qū)值;

  9)、S7200ByteWriteBuf     字節(jié)賦值函數(shù)  

10)、S7200WordWriteBuf     字賦值函數(shù)  

11)、S7200DwordWriteBuf    雙字賦值函數(shù)

12)、S7200WriteFloatDllBuf 寫DLL浮點緩存區(qū)值;  

13)、S7200FloatWriteBuf    浮點賦值函數(shù)

   這里,僅對PB開發(fā)環(huán)境使用DLL緩存區(qū)數(shù)據(jù)傳遞進行調(diào)用給出了

申明方式和調(diào)用舉例,其他非VC、VB、Delphi等語言需要使用DLL

緩沖區(qū)進行數(shù)據(jù)傳遞時,調(diào)用DLL聲明請參考本語言對Windows標準

DLL的規(guī)則和函數(shù)原型進行調(diào)用。

能夠正確傳遞數(shù)組的開發(fā)環(huán)境如VB、VC、delphi不推薦使用該部分

擴展功能函數(shù)。

當(dāng)需要進行8位整數(shù)、16位整數(shù)、32位整數(shù)、32位浮點數(shù)值進行混合讀寫時,所需拓展函數(shù)包括:

  1)、DecBitBin        字整數(shù)的位抽;

  2)、Int16ToInt_8h     字到字節(jié)轉(zhuǎn)換高位字節(jié);  

  3)、Int16ToInt_8l     字到字節(jié)轉(zhuǎn)換低位字節(jié);

  4)、Int8ToInt16       字節(jié)到字的轉(zhuǎn)換;

  5)、Int32ToInt_16h    雙字到字轉(zhuǎn)換高位字;  

  6)、Int32ToInt_16l    雙字到字轉(zhuǎn)換低位字;

  7)、Int16ToInt32      字到雙字的轉(zhuǎn)換;

  8)、Float32ToInt_16h  浮點到字轉(zhuǎn)換高位字;

  9)、Float32ToInt_16l  浮點到字轉(zhuǎn)換低位字;

  10)、Int16ToFloat32   字到浮點的轉(zhuǎn)換;  

  11)、介紹如何實現(xiàn)數(shù)據(jù)的混合讀取和寫入;
wjun7610
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 110 個
工控威望: 249 點
下載積分: 708 分
在線時間: 35(小時)
注冊時間: 2007-09-16
最后登錄: 2025-07-30
查看wjun7610的 主題 / 回貼
2樓  發(fā)表于: 2013-04-13 12:47
在VC中使用DLL一般都是采用動態(tài)聲明的方式,函數(shù)說明中給出的是Delphi的函數(shù)原型,

在VC中聲明時只要注意一下類型的對應(yīng)即可,Delphi中的longint類型對應(yīng)VC中的int類型

Delphi中的Pchar對應(yīng)VC中的char* ,下面給出主要函數(shù)的聲明:

在使用的文件的cpp中聲明一個句柄:

HINSTANCE hinstDLL;

用來標識導(dǎo)入的動態(tài)鏈接庫。

1)、按下例說明聲明相關(guān)各個函數(shù):(在cpp文件的頭處聲明);

typedef int (_stdcall *pOpen)(int nport, int BaudRate, int DataBits, char* Parity, int StopBits, char* User);
typedef int (_stdcall *pClose)(int nport);
typedef int (_stdcall *pSetDelay)(int value);
typedef int (_stdcall *pComTrue)(int nport);
typedef int (_stdcall *pComWork)(int nport);

typedef int (_stdcall *pReadBit)(int nport, int node, char* element, int address, int Bit);
typedef int (_stdcall *pReadByte)(int nport, int node, char* element, int address, int Count, int* RxdBuffer);
typedef int (_stdcall *pReadInt)(int nport, int node, char* element, int address, int Count, int* RxdBuffer);
typedef int (_stdcall *pReadDInt)(int nport, int node, char* element, int address, int Count, int* RxdBuffer);
typedef int (_stdcall *pReadFloat)(int nport, int node, char* element, int address, int Count, float* RxdBuffer);

typedef int (_stdcall *pBitWrite)(int nport, int node, char* element, int address, int Bit, int value);
typedef int (_stdcall *pBitEWrite)(int nport, int node, char* element, int address, int Bit, int value);
typedef int (_stdcall *pEbitCancel)(int nport, int node, char* element, int address, int Bit);

typedef int (_stdcall *pWriteByte)(int nport, int node, char* element, int address, int Count, int* TxdBuffer);
typedef int (_stdcall *pWriteInt)(int nport, int node, char* element, int address, int Count, int* TxdBuffer);
typedef int (_stdcall *pWriteDInt)(int nport, int node, char* element, int address, int Count, int* TxdBuffer);
typedef int (_stdcall *pWriteFloat)(int nport, int node, char* element, int address, int Count, float* TxdBuffer);

typedef int (_stdcall *pPlcRun)(int nport, int node);
typedef int (_stdcall *pPlcStop)(int nport, int node);

typedef int (_stdcall *pBitBin)(int value, int Bitaddress);
typedef int (_stdcall *p16I_8h)(int value);
typedef int (_stdcall *p16I_8l)(int value);
typedef int (_stdcall *p8I_16I)(int valueH, int valueL);
typedef int (_stdcall *p32I_16h)(int value);
typedef int (_stdcall *p32I_16l)(int value);
typedef int (_stdcall *p16I_32I)(int valueH, int valueL);
typedef int (_stdcall *p32f_16h)(float value);
typedef int (_stdcall *p32f_16l)(float value);
typedef float (_stdcall *p16I_32f)(int valueH, int valueL);

2)、建立動態(tài)鏈接庫的新函數(shù)名:(在cpp文件的頭處聲明,上面的聲明之后)

pOpen mOpen;
pClose mClose;
pSetDelay mSetDelay;
pComTrue mComTrue;
pComWork mComWork;

pReadBit mReadBit;
pReadByte mReadByte;
pReadInt mReadInt;
pReadDInt mReadDInt;
pReadFloat mReadFloat;

pBitWrite mBitWrite;
pBitEWrite mBitEWrite;
pEbitCancel mEbitCancel;

pWriteByte mWriteByte;
pWriteInt mWriteInt;
pWriteDInt mWriteDInt;
pWriteFloat mWriteFloat;

pPlcRun mPlcRun;
pPlcStop mPlcStop;

pBitBin mBitBin;
p16I_8h m16I_8h;
p16I_8l m16I_8l;
p8I_16I m8I_16I;
p32I_16h m32I_16h;
p32I_16l m32I_16l;
p16I_32I m16I_32I;
p32f_16h m32f_16h;
p32f_16l m32f_16l;
p16I_32f m16I_32f;

3)、導(dǎo)入動態(tài)鏈接庫,如例所示:(在cpp文件的OnInitDialog過程建立):

hinstDLL = LoadLibrary("S7200_PPI.dll");

4)、判斷dll文件是否存在并聲明并建立動態(tài)鏈接庫中的函數(shù)與新函數(shù)名的對應(yīng)關(guān)系,

如下:(在cpp文件的OnInitDialog過程建立):

if (hinstDLL)
{
   mOpen = (pOpen)GetProcAddress (hinstDLL,"S7200ComOpen");
   mClose = (pClose)GetProcAddress (hinstDLL,"S7200ComClose");
   mSetDelay = (pSetDelay)GetProcAddress (hinstDLL,"S7200SetDelay");
   mComTrue = (pComTrue)GetProcAddress (hinstDLL,"S7200ComTrue");
   mComWork = (pComWork)GetProcAddress (hinstDLL,"S7200ComWork");

   mReadBit = (pReadBit)GetProcAddress (hinstDLL,"S7200BitRead");
   mReadByte = (pReadByte)GetProcAddress (hinstDLL,"S7200ByteRead");
   mReadInt = (pReadInt)GetProcAddress (hinstDLL,"S7200WordRead");
   mReadDInt = (pReadDInt)GetProcAddress (hinstDLL,"S7200DwordRead");
   mReadFloat = (pReadFloat)GetProcAddress (hinstDLL,"S7200FloatRead");

   mBitWrite = (pBitWrite)GetProcAddress (hinstDLL,"S7200BitWrite");
   mBitEWrite = (pBitEWrite)GetProcAddress (hinstDLL,"S7200BitEWrite");
   mEbitCancel = (pEbitCancel)GetProcAddress (hinstDLL,"S7200EbitCancel");
      
   mWriteByte = (pWriteByte)GetProcAddress (hinstDLL,"S7200ByteWrite");
   mWriteInt = (pWriteInt)GetProcAddress (hinstDLL,"S7200WordWrite");
   mWriteDInt = (pWriteDInt)GetProcAddress (hinstDLL,"S7200DwordWrite");
   mWriteFloat = (pWriteFloat)GetProcAddress (hinstDLL,"S7200FloatWrite");
  
   mPlcRun = (pPlcRun)GetProcAddress (hinstDLL,"S7200PlcRun");
   mPlcStop = (pPlcStop)GetProcAddress (hinstDLL,"S7200PlcStop");
      
   mBitBin = (pBitBin)GetProcAddress (hinstDLL,"DecBitBin");
   m16I_8h = (p16I_8h)GetProcAddress (hinstDLL,"Int16ToInt_8h");
   m16I_8l = (p16I_8l)GetProcAddress (hinstDLL,"Int16ToInt_8l");
   m8I_16I= (p8I_16I)GetProcAddress (hinstDLL,"Int8ToInt16");
   m32I_16h = (p32I_16h)GetProcAddress (hinstDLL,"Int32ToInt_16h");
   m32I_16l = (p32I_16l)GetProcAddress (hinstDLL,"Int32ToInt_16l");
   m16I_32I= (p16I_32I)GetProcAddress (hinstDLL,"Int16ToInt32");
   m32f_16h = (p32f_16h)GetProcAddress (hinstDLL,"Float32ToInt_16h");
   m32f_16l = (p32f_16l)GetProcAddress (hinstDLL,"Float32ToInt_16l");
   m16I_32f= (p16I_32f)GetProcAddress (hinstDLL,"Int16ToFloat32");
  
   AfxMessageBox("S7200_PPI.dll已成功載入!");
}
else
{
  AfxMessageBox("沒找到S7200_PPI.dll!");
  SendMessage(WM_CLOSE);
}

注:雙引號中為動態(tài)鏈接庫中的原有函數(shù)名。

函數(shù)中用到了char*型參數(shù),這里介紹下char*與Cstring的相互轉(zhuǎn)換的函數(shù):

(1)char*->CString

char* sz;
CString str;
str.Format("%s",sz);  //可以用此函數(shù)將讀取的值轉(zhuǎn)成字符串

(2) CString -> char*

CString str;
char* sz = str.GetBuffer(0);//可將字符串轉(zhuǎn)成char*給函數(shù)賦值


5)、當(dāng)不再需要使用DLL時記得關(guān)閉串口及釋放動態(tài)鏈接庫,(在OnDestroy事件中釋放)

if(hinstDLL)
{
   int k = mComTrue(mnport);
   if (k==1)
   {
      mClose(mnport);
   }    
   FreeLibrary(hinstDLL);
}
wjun7610
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 110 個
工控威望: 249 點
下載積分: 708 分
在線時間: 35(小時)
注冊時間: 2007-09-16
最后登錄: 2025-07-30
查看wjun7610的 主題 / 回貼
3樓  發(fā)表于: 2013-04-13 12:47
西門子PPI通訊協(xié)議

    通過硬件和軟件偵聽的方法,分析PLC內(nèi)部固有的PPI通訊協(xié)議,然后采用上位機編程,遵循PPI通訊協(xié)議,讀寫PLC數(shù)據(jù),實現(xiàn)人機操作

任務(wù)。這種通訊方法,與一般的自由通訊協(xié)議相比,省略了PLC的通訊程序編寫,只需編寫上位機的通訊程序資源S7-226的編程口物理層為

RS-485結(jié)構(gòu),SIEMENS提供MicroWin軟件,采用的是PPI(Point to Point)協(xié)議,可以用來傳輸、調(diào)試PLC程序。在現(xiàn)場應(yīng)用中,當(dāng)需要PLC

與上位機通訊時,較多的使用自定義協(xié)議與上位機通訊。在這種通訊方式中,需要編程者首先定義自己的自由通訊格式,在PLC中編寫代碼,

利用中斷方式控制通訊端口的數(shù)據(jù)收發(fā)。采用這種方式,PLC編程調(diào)試較為煩瑣,占用PLC的軟件中斷和代碼資源,而且當(dāng)PLC的通訊口定義

為自由通訊口時,PLC的編程軟件無法對PLC進行監(jiān)控,給PLC程序調(diào)試帶來不便。

    SIEMENS S7-200PLC的編程通訊接口,內(nèi)部固化的通訊協(xié)議為PPI協(xié)議,如果上位機遵循PPI協(xié)議來讀寫PLC,就可以省略編寫PLC的通訊

代碼。如何獲得PPI協(xié)議?可以在PLC的編程軟件讀寫PLC數(shù)據(jù)時,利用第三個串口偵聽PLC的通訊數(shù)據(jù),或者利用軟件方法,截取已經(jīng)打開

且正在通訊的端口的數(shù)據(jù),然后歸納總結(jié),解析出PPI協(xié)議的數(shù)據(jù)讀寫報文。這樣,上位機遵循PPI協(xié)議,就可以便利的讀寫PLC內(nèi)部的數(shù)據(jù),

實現(xiàn)上位機的人機操作功能。

西門子的PPI(Point to Point)通訊協(xié)議采用主從式的通訊方式,一次讀寫操作的步驟包括:首先上位機發(fā)出讀寫命令,PLC作出接收正確

的響應(yīng),上位機接到此響應(yīng)則發(fā)出確認申請命令,PLC則完成正確的讀寫響應(yīng),回應(yīng)給上位機數(shù)據(jù)。這樣收發(fā)兩次數(shù)據(jù),完成一次數(shù)據(jù)的讀寫

(從這里可以看出PPI協(xié)議的通訊效率并不好,一次讀寫需收發(fā)兩次數(shù)據(jù)^_^)。

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

1)、讀寫申請的數(shù)據(jù)格式如下:

SD LE LER SD DA SA FC DASP SSAP DU FCS ED

SD:(Start Delimiter)開始定界符(68H)

LE:(Length)報文數(shù)據(jù)長度

LER:(Repeated Length)重復(fù)數(shù)據(jù)長度

SD: (Start Delimiter)開始定界符(68H)

SA:(Source Address)源地址,指該地址;

DA:(Destination Address)目標地址,指該地址;

FC:(Function Code)功能碼

DSAP:(Destination Service Access Point)目的服務(wù)存取點

SSAP:(Source Service Access Point)源服務(wù)存取點

DU:(Data Unit)數(shù)據(jù)單元

FCS:(Frame Check Sequence)校驗碼

ED:(End Delimiter)結(jié)束分界符(16H)

報文數(shù)據(jù)長度和重復(fù)數(shù)據(jù)長度為自DA至DU的數(shù)據(jù)長度,校驗碼為DA至DU數(shù)據(jù)的和校驗,只取其中的末字節(jié)值。

讀寫一般數(shù)據(jù)的功能碼為 6CH,讀CT數(shù)據(jù)、置位、復(fù)位、強制等的功能碼為 7CH,確認命令功能碼5CH。

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

3)、確認讀寫命令的數(shù)據(jù)格式為:

SD SA DA FC FCS ED  

其中SD為起始符,為10H

SA為數(shù)據(jù)源地址

DA為目的地址

FC為功能碼,取5CH

FCS為SA+DA+FC的和的末字節(jié)

ED為結(jié)束符,取16H

4)、數(shù)據(jù)類型碼

04:S
05:SM
06:AI
07:AQ
1E: C
81:I
82:Q
83:M
84:V
1F: T

5)、讀寫功能數(shù)據(jù)命令實例

1、給寫VW3值1200

68 21 21 68 02 00 6C 32 01 00 00 00 00 00 0E 00 06 05 01 12 0A 10 02 00 02 00 01 84 00 00 18 00 04 00 10 04 B0 50 16

2、讀取IB0的數(shù)據(jù)值

68 1B 1B 68 02 00 6C 32 01 00 00 00 00 00 0E 00 00 04 01 12 0A 10 02 00 01 00 00 81 00 00 00 64 16

感興趣的朋友給你根據(jù)上述例子用串口精靈測試一下,當(dāng)發(fā)送命令成功PLC返回E5,你再發(fā)送10 02 00 5C 5E 16,就可以完成一次讀寫命令。

(記得接收和發(fā)送采用16進制方式 o(∩_∩)o...哈哈)

2.2 S7-200PLC CPU內(nèi)存地址范圍(DLL所能尋址的范圍)

被存取:       內(nèi)存類型      CPU 221        CPU 222         CPU 224                   CPU 226

位(字節(jié).位)       V          0.0 ~ 2047.7  0.0 ~  2047.7  0.0 ~  5119.7  V 1.22    0.0 ~  5119.7   V 1.23
                                                            0.0 ~  8191.7  V 2.00    0.0 ~ 10239.7  V 2.00
                                                            0.0 ~  10239.7 XP

                   I          0.0 ~ 15.7   0.0 ~ 15.7     0.0 ~  15.7              0.0 ~  15.7

                   Q          0.0 ~ 15.7   0.0 ~ 15.7     0.0 ~ 15.7               0.0 ~ 15.7
                  
                   M          0.0 ~ 31.7   0.0 ~ 31.7     0.0 ~ 31.7               0.0 ~ 31.7

                   S          0.0 ~ 31.7   0.0 ~ 31.7     0.0 ~ 31.7               0.0 ~ 31.7

                   SM         0.0 ~ 179.7  0.0 ~ 299.7    0.0 ~ 549.7              0.0 ~ 549.7

字節(jié)               VB         0 ~ 2047     0 ~ 2047       0 ~ 5119   V 1.22        0 ~ 5119        V 1.23
                                                            0 ~ 8191   V 2.00        0 ~ 10239       V 2.00
                                                            0 ~ 10239  XP

                   IB         0 ~ 15       0 ~ 15         0 ~ 15                   0 ~ 15

                   QB         0 ~ 15       0 ~ 15         0 ~ 15                   0 ~ 15

                   MB         0 ~ 31       0 ~ 31         0 ~ 31                   0 ~ 31

                   SMB        0 ~179       0 ~299         0 ~ 549                  0 ~ 549

                   SB         0 ~ 31       0 ~ 31         0 ~ 31                   0 ~ 31

字                 VW         0 ~2046      0 ~ 2046       0 ~5118   V 1.22         0 ~ 5118        V 1.23
                                                            0 ~ 8190   V 2.00        0 ~ 10230       V 2.00
                                                            0 ~ 10230  XP
                  
                   T          0 ~ 255      0 ~ 255        0 ~ 255                  0 ~ 255

                   C          0 ~ 255      0 ~ 255        0 ~ 255                  0 ~ 255

                   AIW        0 ~ 30       0 ~ 30         0 ~ 62                   0 ~ 62

                   AQW        0 ~ 30       0 ~ 30         0 ~ 62                   0 ~ 62

雙字               VD         0 ~ 2044     0 ~ 2044      0 ~ 5116   V 1.22       0 ~ 5116        V 1.23
                                                           0 ~ 8188   V 2.00       0 ~ 10236       V 2.00
                                                           0 ~ 10236  XP

說明:S7-200PLC的字、雙字地址和字節(jié)地址實際上是重疊的,下面做個說明如:

VB0  VB1  VB2  VB3  VB4  VB5  VB6  VB7  VB8  VB9  VB10  VB11  VB12  VB13  VB14  VB15

————  ————  ————  ————  ————  ————    ————     ————
  VW0       VW2       VW4       VW6       VW8       VW10        VW12         VW14
—————————  ————————— —————————    ———————————
       VD0                 VD4                 VD8                     VD12

從上例可以看出PLC中字節(jié)、字與雙字尋址的關(guān)系,當(dāng)然如果你想使用VW1(VB1 VB2)、VD3(VB3 VB4 VB5 VB6)等尋址方式也是可以的,

但為了減少不必要的尋址錯誤造成程序的非法執(zhí)行建議:

字尋址時使用(V、I、Q、M等等)0、2、4、6、8、10 ……,(這從PLC的模擬量輸入/輸出(AIW/AQW)的尋址就可以看出奇數(shù)地址是不允許的)

雙字尋址時使用(V、I、Q、M等等)0、4、8、12、16、20、24 …………………………,同時還要注意字節(jié)地址尋址最好也能不重疊;

C、T區(qū)當(dāng)前值讀取時的地址按實際地址0~255來。
huoshi
為所當(dāng)為
級別: 網(wǎng)絡(luò)英雄

精華主題: 0
發(fā)帖數(shù)量: 2464 個
工控威望: 23320 點
下載積分: 1875 分
在線時間: 2825(小時)
注冊時間: 2010-12-27
最后登錄: 2025-10-04
查看huoshi的 主題 / 回貼
4樓  發(fā)表于: 2013-04-14 08:50
謝謝下了學(xué)習(xí)學(xué)習(xí)
kccjason
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 43 個
工控威望: 144 點
下載積分: 600 分
在線時間: 35(小時)
注冊時間: 2011-04-26
最后登錄: 2025-06-27
查看kccjason的 主題 / 回貼
5樓  發(fā)表于: 2013-04-25 23:10
取下謝謝
11yewang
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 3 個
工控威望: 121 點
下載積分: 523 分
在線時間: 1(小時)
注冊時間: 2013-01-28
最后登錄: 2015-01-30
查看11yewang的 主題 / 回貼
6樓  發(fā)表于: 2013-10-23 09:23
好東西啊
yahk1984
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 7 個
工控威望: 125 點
下載積分: 576 分
在線時間: 8(小時)
注冊時間: 2013-04-19
最后登錄: 2025-05-18
查看yahk1984的 主題 / 回貼
7樓  發(fā)表于: 2013-11-05 11:49
下不了

主站蜘蛛池模板: 中文av网站| 欧美极品少妇无套实战 | 婷婷四房色播 | 色欲香天天综合网站 | 亚洲精品v日韩精品 | 水蜜桃av无码 | 麻豆一二三四区乱码 | 国产成人免费片在线观看 | 一本色道久久88亚洲精品综合 | 亚洲成av人的天堂在线观看 | 亚洲精品视频大全 | 自拍视频亚洲综合在线精品 | 国产精品久久久久久亚洲影视 | 国产网红主播无码精品 | 嫩草影视入口 | 亚洲国产一卡2卡3卡4卡5公司 | 制服丝袜美腿一区二区 | se333se亚洲精品| 国产成人精品无码一区二区三区 | av无码免费岛国动作片片段欣赏网 | 精品无码av不卡一区二区三区 | 日韩精品免费在线观看视频 | 四虎影院免费 | 国产精品久久久久久久久久10秀 | 三级毛片网 | 最新69成人精品视频免费 | 亚洲日韩精品看片无码 | 精品伊人久久久大香线蕉下载 | 亚洲一线二线三线品牌精华液久久久 | 91在线观看视频网站 | 性感美女的逼 | 亚洲一区二区三区尿失禁 | 乱女午夜精品一区二区三区 | 亚洲精品国产一区二区精华 | 国产一二三四区中 | 手机免费在线观看av | 手机在线看片你懂的 | 在线一区二区三区 | 中文精品久久久久人妻 | 欧美在线视频网站 | 国产精品久久久久久久久久辛辛 | 蜜桃av少妇久久久久久高潮不断 | 高h猛烈失禁潮喷无码视频 97国产人妻人人爽人人澡 | 国产成a人亚洲精v品在线观看 | 色在线免费视频 | 亚洲一二区视频 | 亚洲二区在线 | 黄色免费在线网址 | 少妇精品一区二区三区 | 欧美精品18videosex性欧美 | 亚洲精品~无码抽插 | 欧美成人午夜精品久久久 | 亚洲人的天堂 | 免费999精品国产自在现线 | 精品久久久久久乱码天堂 | 在线精品无码字幕无码av | 欧洲色播| 91这里只有精品 | 高清人人天天夜夜曰狠狠狠狠 | 主站蜘蛛池模板: 蛛词}| 国产日韩一区在线精品 | 爱视频福利 | 国产成人一区二区三区视频 | 午夜免费啪视频 | 欧美人与动牲交大全免费 | 7m视频成人精品分类 | 亚洲已满18点击进入在线看片 | 国产精品丝袜高跟鞋 | 欧美一区二区三区国产 | 午夜久久久久久久久久久久久捆绑 | 超碰66 | 欧美一性一乱一交一视频 | 香港三级日本三级a视频 | 无码中文字幕加勒比一本二本 | 91嫩草香蕉 | 亚洲男人的天堂av手机在线观看 | 丰满又黄又爽少妇毛片 | 午夜成年人视频 | 久草com| 久久久精品久久日韩一区综合 | 337p日本欧洲亚大胆精80 | 亚洲卡1卡2卡三卡4卡5卡6卡 | 色网址在线观看 | 欧美精品在线看 | 黄色av免费在线播放 | 亚洲人成网77777亚洲色 | www..com黄色 | 青青草视频免费在线观看 | 毛片aaaa| 国产成人三级在线视频网站观看 | 国产精品a成v人在线播放 | av色偷偷| 精品伊人久久大线蕉色首页 | 老男人久久青草av高清 | 午夜成人性刺激免费视频在线观看 | 国产一级视频在线 | 亚洲人成激情在线播放国 | 亚洲精品美女久久久久9999 | 国产 | 欧洲野花视频天堂视频p | 精品久久久无码中文字幕一丶 | 亚洲最大的成人网 | 日韩欧美在线一区二区 | 国产成人综合亚洲精品 | 日本精品一区二区 | 四川少妇xxxx内谢欧美 | 亚洲国产精品婷婷 | 国产热の有码热の无码视频 | 97人人超碰国产精品最新o | 丁香五月激情综合亚洲 | 国产亚洲精品久久久久久牛牛 | 2021精品亚洲中文字幕 | 黄色一级片免费的 | 任你躁久久精品6 | 美女裸阴视频 | 色综合国产 | 亚洲人网 | 国产最爽的乱淫视频国语对白1 | 精品国产精品国产自在久国产 | 国产黄网站| 主站蜘蛛池模板: 蛛词}| 中文日字幕无限码 | 无码日韩人妻精品久久蜜桃 | 久久久精品国产免大香伊 | 亚洲欧美日韩影院 | 国产亚洲成av人片在线观看桃 | 欧美偷拍亚洲 | 少妇午夜影院 | www日本高清 | 天天做天天摸天天爽欧美一区 | 色噜噜亚洲男人的天堂www | 音影先锋av资源 | 亚洲中文字幕无码av | 欧美3p两根一起进高清视频 | 一区二区三区午夜免费福利视频 | 午夜神马影院dy888亚洲精品 | 日韩av片免费播放 | 中日av乱码一区二区三区乱码 | 91抖音在线观看 | 亚洲国产精品久久网午夜 | 国产精品www| 国产精品色 | 青青操精品 | 中文字幕婷婷日韩欧美亚洲 | 久久精品aⅴ无码中文字字幕不卡 | 美日韩一二三区 | 在线看片无码永久av | 欧美色惰| 日韩精品中文字幕在线观看 | 中文字幕乱码视频32 | 国产精品亚洲专区无码第一页 | 国产欧美日韩一区2区 | 一区二区三区在线观看av | 欧美高清一区二区 | 青青视频免费看 | 亚洲成a人无码 | 国产女人喷潮视频在线观看 | 色婷婷综合久色aⅴ五区最新 | 国产成人亚洲综合无码精品 | 男人天堂资源 | 亚洲欧美激情在线一区 | 久久亚洲精品久久国产一区二区 | 久久精品道一区二区三区 | 韩国精品视频一区二区在线播放 | 在线岛国片免费观看无码 | 国产无遮挡免费 | 91视频在线观看 | 青青草欧美视频 | 人人草网站 | 日日日日日| 国产亚洲毛片 | 国产成人精品午夜视频' | 蜜臀av在线观看 | 黄色大片一区二区三区 | 天天色官网 | 亚洲欧洲精品成人久久曰影片 | 亚洲成色777777女色窝 | 影音先锋无码aⅴ男人资源站 | 一本色道av久久精品 | 日本精品一区二区三区在线观看 | 主站蜘蛛池模板: 蛛词}| 国内偷拍精品视频 | 国产精品久久精品三级 | 噜噜久久噜噜久久鬼88 | 日韩精品无码二三区a片 | 91精品国产91久久综合桃花 | 灵媒泰国恐怖片在线观看国语翻译 | 午夜精品久久久久久久99老熟妇 | 四虎884aa成人精品 | 性欧美videofree高清极品 | 观看国产色欲色欲色欲www | 999久久久免费精品国产 | 久久久www影院人成_免费 | 伊人网视频在线观看 | 97国产精华最好的产品亚洲 | 狠狠爱夜夜 | 亚洲欧美狂白浆一区二区 | 精品国产欧美一区二区三区不卡 | 亚洲成人在线视频观看 | 日本在线高清视频 | 国产在线观看无码免费视频 | 午夜男女刺激爽爽影院 | 日本国产网曝视频在线观看 | 亚洲天堂欧美在线 | 久久久精品免费看 | 四虎成人精品国产永久免费 | 亚洲国产精品尤物yw在线 | 亚洲男人精品 | 久久青青草原国产精品最新片 | 中文丝袜人妻一区二区 | 精品少妇人妻av一区二区 | 911精品国产一区二区在线 | a一区二区三区乱码在线 | 欧洲 | 免费国产视频 | 日韩一区三区 | 国产成人8x人网站在线视频 | 国内精品九九久久精品 | 女人的天堂网站 | 男女天堂网 | 日韩97 | 久久99er精品国产首页 | 欧美亚洲另类图片 | 在线中文av | 色婷婷综合成人 | 久久综合88熟人妻 | 无码人妻丝袜视频在线播免费 | 乱人伦视频中文字幕 | 天下第一社区视频www日本 | 精品久久欧美熟妇www | 日本综合久久 | 国产日韩在线观看一区 | 国产欧美日韩91 | 国产激情无码视频在线播放性色 | 国产欧美日韩久久久久 | 无码一区二区三区亚洲人妻 | av天堂中av世界中文在线播放 | 欧美午夜刺激影院 | 日本看片一二三区高清 | 国产小视频你懂的 | 久久国产精品2020免费 | 主站蜘蛛池模板: 蛛词}| 欧美日本激情 | 日本熟妇色一本在线视频 | 蜜桃视频一区二区三区在线观看 | 欧美久久精品一级黑人c片 综合久久亚洲 | 色九九影院 | 国语对白少妇spa私密按摩 | 精品一区二区在线看 | 女优天堂网 | 久久国产精品国产四虎90后 | 中文字幕高清在线观看 | 欧美成aⅴ人高清ww 精品国产小视频在线观看 在线观看区 | 人善性zzzzzo另类 | 欧美日韩亚洲系列 | 国产精品久久久久一区二区三区 | 性xxxxx泰国娇小 | 中文字幕丰满乱子伦无码专区 | 日本一级淫片 | 国产二级毛片 | 天天操夜夜做 | 国产精品自产拍在线观看 | 国产日韩免费观看 | 国产大学生一级毛片绿象 | 国产成人精品123区免费视频 | 婷婷激情成人 | 国产成人啪精品视频免费视频 | 春药按摩人妻弓中文字幕 | 亚洲产国偷v产偷自拍网址 日韩国产在线看 | 国产精品国产a | 国产精品久久久久久久久大全 | 日产精品卡2卡三卡乱码网站 | 亚洲永久免费观看 | 亚洲综合av一区 | 福利视频在线看 | 国产精品夜夜 | 人妻人人添人妻人人爱 | 91夜色视频| 日韩一区二区三区免费看 | 色综合视频一区中文字幕 | 大尺度做爰啪啪高潮 | 日日艹| 久久久欧美精品sm网站 | 欧美天天视频 | 国内成+人 亚洲+欧美+综合在线 | 中文字幕精品久久久久人妻红杏ⅰ | 2019一級特黃色毛片免費看 | 人人澡人人人人天天夜夜 | 免费观看性欧美大片无片 | 艳妇臀荡乳欲伦交换日本 | 伊人伊成久久人综合网站 | 超碰成人免费在线观看 | 国产一区福利 | 在线观看91 | 久国产精品韩国三级视频 | 午夜色大片在线观看免费 | 国产免费黄色小视频 | 成人免费毛片色戒 | 久久久久国产精品人妻aⅴ四季 | 九九在线| 日本欧美大码a在线观看 |