工控分享 | 教你掌握多個模擬量快速編程技巧
發(fā)布時間:2024-04-03 15:03 [ 我要自學網(wǎng)原創(chuàng) ] 發(fā)布人: 快樂小女
導讀

在我們的實際項目中經(jīng)常需要使用模擬量來讀取現(xiàn)場設備的數(shù)據(jù)。比如設備的溫度、液體的高度、流速、變頻器的頻率、閥門的開度等等。那么如果現(xiàn)場有多個模擬量的傳感器要編寫程序的話,可能工作量就會比較大,有沒有更快捷的方式編程呢?那么本文就給大家分享多個模擬量快速編程的方法。本案例使用的是S7-1200PLC實現(xiàn)控制要求。



控制要求

將連續(xù)16個Al信號(IW96-IW126),根據(jù)信號的范圍,轉換成對應的工程量信號。比如:IW96測量的是溫度,范圍是0.0-100.0℃。IW96測量的是管道的壓力,范圍是0.0-1.0MPa。



01

組態(tài)模擬量模塊

①在博途軟件中組態(tài)1215CPU以及兩個8通道模擬量模塊,如圖1所示:

▲圖1▲


②查看兩個模擬量擴展模塊的通道地址得知是IW96-IW126,如圖2和圖3所示:

▲圖2▲


▲圖3▲


02

程序編寫

①在博途軟件中新建DB1數(shù)據(jù)塊,建立4個數(shù)組的數(shù)據(jù)類型,每個數(shù)組包含16個元素個數(shù)。比如“A”這個數(shù)組,包含了16個Int的數(shù)據(jù)!癓imlitMix”數(shù)組包含了16個Real數(shù)據(jù)。其中還建立了兩個Int的數(shù)據(jù),名稱為“ForNum”和“ForNum1”,主要用于循環(huán)程序的使用。

▲圖4▲


②如圖5所示,在OB1程序塊中編寫程序。程序段1對循環(huán)次數(shù)清零。程序段2是標準化和縮放指令,標準化指令(NORM_X)中的VALUE這個管腳的地址,使用數(shù)組間接尋址,隨著ForNum這個變量的變化,可以得知第一次的數(shù)據(jù)為A[0],第二次為A[1],依次遞增?s放指令的MIN和MAX管腳的參數(shù)也同樣的是間接尋址,MIN管腳第一次的數(shù)據(jù)為LimlitMix[0],第二次的數(shù)據(jù)為LimlitMix[1],依次遞增。MAX管腳第一次的數(shù)據(jù)為LimlitMax[0],第二次的數(shù)據(jù)為LimlitMax[1],依次遞增。


程序段3使用的是ADD指令實現(xiàn)“ForNum”循環(huán)次數(shù)的遞增,再判斷循環(huán)次數(shù),如果循環(huán)次數(shù)的值小于等于15則跳轉到程序段2。


▲圖5▲


③程序段4是使用PEEK_WORD指令將IW96為起始的16個數(shù)據(jù)映射到DB塊的“A”數(shù)組中,這樣就能把外部的16個模擬量通道的數(shù)據(jù)依次存入A[0]至A[15]中。其中指令的area的含義是:指定訪問存儲區(qū)類型,16#81:輸入映像區(qū)。


dbNumber的含義是:用來指定訪問數(shù)據(jù)塊的編號。僅在訪問數(shù)據(jù)塊時使用,其他存儲區(qū)為0。byteOffset的含義是:用來指定讀取數(shù)據(jù)地址的偏移量。如圖6所示:

▲圖6▲


03

仿真測試

①第一個通道工程單位設置為0.0-100.0,第二個通道工程單位設置為0.0-1.0。第三個通道工程單位設置為-100.0-200.0。如圖7所示:

圖片

▲圖7▲


②在強制表中寫入三個模擬量通道數(shù)據(jù)。如圖8所示:

圖片

▲圖8▲


③模擬量的數(shù)據(jù)已經(jīng)轉換成實際的工程單位值。如圖9所示:

圖片

▲圖9▲

S7-1200SCL入門基礎教程
我要自學網(wǎng)商城 ¥40 元
進入購買
文章評論
0 條評論 按熱度排序 按時間排序 /350
添加表情
遵守中華人民共和國的各項道德法規(guī),
承擔因您的行為而導致的法律責任,
本站有權保留或刪除有爭議評論。
參與本評論即表明您已經(jīng)閱讀并接受
上述條款。
V
特惠充值
聯(lián)系客服
APP下載
官方微信
返回頂部
分類選擇:
電腦辦公 平面設計 室內(nèi)設計 室外設計 機械設計 工業(yè)自動化 影視動畫 程序開發(fā) 網(wǎng)頁設計 會計課程 興趣成長 AIGC