乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      S7-1200與邁凱諾變頻器進行modbus RTU進行通訊

       阿明哥哥資料區(qū) 2019-05-24
      JZGKCHINA

      一、組態(tài)PLC

      打開博圖V15軟件,新建項目,進行PLC的硬件組態(tài),在CPU的左側(cè)添加CM1241 modbusRTU通訊模塊。

      二、組態(tài)通訊端口

      雙擊CM1241 modbusRTU通訊模塊,在下方“RS422/485接口”選項下,點擊“端口組態(tài)”,右側(cè)設置如下:協(xié)議---自由口;操作模式--半雙工(RS4852線制模式;接收線路初始狀態(tài)--無;波特率--9600、奇偶校驗--無、數(shù)據(jù)位--8/字符、停止位--1;其余默認;如圖1、圖2所示: 

      圖1

      圖2

      三、設置CPU系統(tǒng)和時鐘存儲器

      雙擊CPU,點擊“系統(tǒng)和時鐘存儲器”,點擊右側(cè)“啟用系統(tǒng)存儲器字節(jié)”和“啟用時鐘存儲器字節(jié)”,用于編程時使用首次掃描位和時鐘脈沖;如圖3

      圖3

      四、新建讀寫數(shù)據(jù)塊

      新建讀寫全局數(shù)據(jù)塊DB3、DB5,數(shù)據(jù)塊里新建數(shù)據(jù)類型為UINT的數(shù)組;如圖4

      圖4

      五、編寫modbusRTU初始化程序

      在OB1里,編寫modbusRTU初始化程序,點擊右側(cè)“通信”--“通信處理器”--MODBUS(RTU)--Modbus_Comm_Load,拖拽到程序段1中,自動生成背景數(shù)據(jù)塊;

      Modbus_Comm_Load模塊的引腳說明:

      EN--使能端,一直使能;

      REQ--只在第一次掃描周期為1,且必須是上升沿觸發(fā);

      PORT--指定CM1241模塊的硬件標識符(標注方法:如圖7

      BAUD--指定通訊波特率(9600);

      PARITY--指定奇偶校驗位(0--無校驗)

      MB_DB--指向主站生成的背景數(shù)據(jù)塊的MB_DB參數(shù);

      輸出引腳指定地址即可,如圖6

      注意:在左側(cè)“程序塊”--“系統(tǒng)塊”--“程序資源”下拉列表中,雙擊Modbus_Comm_Load的背景數(shù)據(jù)塊,Modbus_Comm_Load_DB,修改第19MODE的數(shù)值,由默認值修改為16#04;如圖8

      0=全雙工(RS232;

      1=全雙工(RS422)四線制模式(點對點);

      2=全全雙工(RS422)四線制模式(多點主站,CM PtPET200SP));

      3=全全雙工(RS422)四線制模式(多點從站,CM PtPET200SP));

      4=半雙工(RS485)二線制模式;

      圖6

      圖7

      圖8

      六、編寫主站程序(讀指令)

      在OB1里,編寫modbusRTU主站程序,點擊右側(cè)“通信”--“通信處理器”--MODBUS(RTU)--Modbus_Master,拖拽到程序段2中,自動生成背景數(shù)據(jù)塊;

      Modbus_Master模塊的引腳說明:

      EN--使能端,一直使能;

      REQ--上升沿觸發(fā);

      MB_ADDR--從站地址;

      MODE--讀或?qū)懼噶睿?span>0是讀指令,1是寫指令);

      DATA_ADDR--從站的起始地址(需將從站的地址由16進制轉(zhuǎn)換為10進制,轉(zhuǎn)換成10進制后,數(shù)據(jù)加1(因為從站地址是從0開始的,而PLC的地址是從1開始的,所以要加1));

      DATA_LAN--指定讀取的數(shù)據(jù)長度(即一下讀取幾個數(shù)據(jù));

      DATA_PTR--指定讀取的數(shù)據(jù)存放到此數(shù)組中;

      輸出引腳指定地址即可,如圖9

      圖9

      圖9程序解析:

      從站地址:

      1000--頻率給定(只寫);

      1001--運行頻率(只讀);

      1002--母線電壓(只讀);

      1003--輸出電壓(只讀);

      1004--輸出電流(只讀);

      1001H轉(zhuǎn)成10進制是4097,4097+1=4098;

      所以此程序就是用4號功能碼讀取從站地址為1的從4098(從站從4097)開始的4個數(shù)據(jù)(運行頻率、母線電壓、輸出電壓、輸出電流),存放到數(shù)據(jù)塊_1(DB3)的第一個變量的數(shù)組里(對應關系是一一對應的,即DB3.DBW0是運行頻率,DB3.DBW2是母線電壓,DB3.DBW4是輸出電壓,DB3.DBW6是輸出電流),也就是說在上位機或監(jiān)控里監(jiān)控時,只要寫DB3.DBW0、DB3.DBW2、DB3.DBW4DB3.DBW6即可;

      七、編寫主站程序(寫指令)

      同第六項讀指令一樣,只是將MODE改為1即可;如圖10

      圖10

      圖10程序解析:

      從站地址:

      2000--變頻啟動停止指令(只寫);

      2000地址=1:正轉(zhuǎn)運行;

      2000地址=2:反轉(zhuǎn)運行;

      2000地址=3:正轉(zhuǎn)點動;

      2000地址=4:反轉(zhuǎn)點動;

      2000地址=5:自由停機;

      2000地址=6:減速停機;

      2000地址=7:故障復位;

      2000H轉(zhuǎn)成10進制是8192,8192+1=8193;

      所以此程序就是用4號功能碼向從站地址為1的從8193(從站從48192)開始的1個數(shù)據(jù)寫數(shù)據(jù)(變頻器啟停控制),存放到數(shù)據(jù)塊_2(DB5)的第一個變量的數(shù)組里(對應關系是一一對應的,即DB5.DBW0是啟停信號,即DB5.DBW0=1時變頻器正轉(zhuǎn),DB5.DBW0=6時變頻器減速停機),也就是說在上位機或監(jiān)控里寫命令時,只要將DB5.DBW0數(shù)值寫成0~7即可;

      八、輪詢

      當一個CM 1241帶很多從站時,或者帶一個從站,但是一個從站里需要多次用到讀或?qū)懼噶顣r,就需要用輪詢的方式來讀寫,不能同時對多個Modbus_Master模塊進行讀寫;

      輪詢程序如圖11~圖16

      圖11

      圖12

      圖13

      圖14

      圖15

      圖16

      九、運行監(jiān)控畫面:

      給定頻率32.6Hz

      圖17

      十、停機監(jiān)控畫面

      給定頻率32.6Hz,停機指令6(減速停機)

      圖18

      歡迎給作者打賞

        本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多