在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

電機運行時間進行排列 是分為兩個部分來完成這個程序的設計的

aYPB_plc ? 來源:陳年麗 ? 2019-07-19 08:57 ? 次閱讀

前幾天有個學員咨詢一個程序設計的問題,程序的控制要求如下:需要控制5臺電機的運行,每臺電機運行時需要記錄運行時間,電機啟動運行時,根據記錄的運行時間,從小到大,每個2s依次啟動電機的運行。

我想對于這個程序的控制要求來講,他的難點在于如何對這些電機運行時間進行排列,排列好了后,如何根據排列的順序去起動電機的運行,從這個控制要求中我們可以看出,這主要是分為兩個部分來完成這個程序的設計的:

第一部分、用于對電機的運行時間進行從小到大順序的排列

第二部分、根據排列好的數據,如何判斷需要起動那一臺電機

前幾天有個學員咨詢一個程序設計的問題,程序的控制要求如下:需要控制5臺電機的運行,每臺電機運行時需要記錄運行時間,電機啟動運行時,根據記錄的運行時間,從小到大,每個2s依次啟動電機的運行。

我想對于這個程序的控制要求來講,他的難點在于如何對這些電機運行時間進行排列,排列好了后,如何根據排列的順序去起動電機的運行,從這個控制要求中我們可以看出,這主要是分為兩個部分來完成這個程序的設計的:

第一部分、用于對電機的運行時間進行從小到大順序的排列

第二部分、根據排列好的數據,如何判斷需要起動那一臺電機

這里我們以西門子S7-200SMART系列PLC為例,先說說,如何編寫一個數據排列的帶參數的子程序。

數據排列帶參數子程序設計思路:

西門子S7-200系列的PLC中不像三菱的FX系列PLC具有數據排列的指令,因此我們要實現這個數據的排列功能,必須自己去搭建一個這樣的功能塊,在搭建這個功能塊的時候,會使用到間接尋址和循環指令,同時還需要應用到帶參數的子程序。那么如何編寫一個數據排列的子程序呢?

假設有5個數據需要把他們的數據的大小按照順序從小到大排列,那么我們可以先在這五個數中找到最大的數放在最后面。然后在剩下的四個數中找到最大的數放到倒數第二個的位置,接著在剩下的三個數中找到最大的值放到倒數第三的位置,依次下去,這樣當全部比較完后,我們的數據就按照從小到大的順序排列好了。那么很明顯,我們需要用兩個循環指令進行嵌套。外層的循環指令需要循環4次,而內層的循環指令的循環次數是會變化的,因為第一次從5個數據中找出最大值,循環4次,第二次的時候從4個數據中找出最大值,循環3次,依次下去,每次需要改變循環的次數。

如何找出最大值呢?我們可以進行比較,首先用第二個數跟第一個數比較,如果第二個數比第一個數大,那么指針往下移動變成第二個數跟第三個數比較,如果第二個數比第三個數大,那么對第二個數和第三個數進行交換,依次下去,當比較完成后,最大的數就放到最后的地址里面去了。

程序設計:

(1)建立變量表

(2)根據變量表,編寫數據排列子程序

第二部分的內容:根據排列好的數據,如何判斷需要起動那一臺電機。

在啟動電機時,我們需要把每一臺電機運行的時間拿過來與排列好的數據進行比較,看看他是位于我們這個排列好的數據中的的什么位置。然后根據這個位置來判斷啟動的時候。

設計思路:

在這里面我們會用到兩個功能,第一個功能時把我們電機運行的時間,按照編號順序放到表格中,例如VW20到VW28分別表示電機1到電機5的運行時間,把它放到表格中,而后把我們排列好的數據,拿過來與表格中的數據進行比較(可以使用查表指令),看看最小的值時位于表格中的哪個位置,根據查表指令所查找的位置來啟動那條電機,比如查找出來的值時3則表示的就是第三臺電機的運行時間最少,可以啟動這第三臺電機,這里我們需要用到表格指令及間接尋址。

程序:

總結

本程序作為一個框架程序,主要應用到了以下幾個內容,間接尋址的時候用,循環指令的應用,帶參數子程序的應用,查表指令的使用,希望讀者看完后,對自己以后設計程序時思路會有所啟發,若有考慮不周之處或更好的方法,望指出,謝謝。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 西門子
    +關注

    關注

    95

    文章

    3066

    瀏覽量

    116511
  • 電機
    +關注

    關注

    142

    文章

    9095

    瀏覽量

    146485

原文標題:資深工程師分享:PLC程序設計思路,初學者福利!

文章出處:【微信號:plcfans,微信公眾號:PLC發燒友】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    如何縮短Vivado的運行時間

    在Vivado Implementation階段,有時是有必要分析一下什么原因導致運行時間(runtime)過長,從而找到一些方法來縮短運行時間
    的頭像 發表于 05-29 14:37 ?1.4w次閱讀
    如何縮短Vivado的<b class='flag-5'>運行時間</b>

    獲取單片機運行時間

    的開始階段使單片機的一GPIO輸出高電平,在待測程序段的結尾階段再令這個GPIO輸出低電平。用示波器通過檢查高電平的時間長度,就知道了這段代碼的
    的頭像 發表于 08-26 20:26 ?1917次閱讀
    獲取單片<b class='flag-5'>機運行時間</b>

    程序運行時間計時小程序

    本帖最后由 sushu 于 2013-3-9 22:40 編輯 看到一帖子[求助] 計算程序運行時間,想要計算指示燈點亮和熄滅的時間,想了想:使用事件結構就可以
    發表于 03-09 22:39

    labview中計算程序運行時間

    可能這個對大家來說不是什么大問題,也有很多人有很多方法來實現程序運行時間的計算,要么兩個計時器,要么用到事件結構。我這里用移位寄存器實現。 希望大家不要吐槽,如果大家有更好的,希望共
    發表于 05-23 21:52

    電機參數檢測程序運行時間有多長?

    、Flag_Run_Identify;這個使能位控制電機運轉,我看是通過PWM的使能來控制,這樣是不是立刻停止電機和啟動電機,在系統內部有緩慢啟動和停止機制嗎?四、
    發表于 06-19 13:47

    freertos的任務運行時間怎么設置

    對于相同優先級的任務采用時間片輪詢的方式運行,那比如說有兩個優先級都為5的任務,那這兩個任務的運行時間如何設置呢?在rt-thread中創建
    發表于 07-19 08:03

    電機運行時嘯叫、噪音過大是為什么?

    電機運行時嘯叫、噪音過大?
    發表于 11-08 08:18

    C語言教程之顯示程序運行時間

    C語言教程之顯示程序運行時間,很好的C語言資料,快來學習吧。
    發表于 04-25 16:09 ?0次下載

    如何用SysTick實現測量程序運行時間

    在實際的項目開發過程中,常常遇到需要得到一段代碼的運行時間,通常的方法是用示波器來測量,這篇博文將用 SysTick 來實現 精確測量 程序運行時間。 STM32F4 的內核定時
    的頭像 發表于 05-09 14:07 ?6135次閱讀
    如何用SysTick實現測量<b class='flag-5'>程序</b><b class='flag-5'>運行時間</b>

    淺析STM32代碼運行時間的技巧

    前言 ????測試代碼的運行時間種方法: 使用單片機內部定時器,在待測程序段的開始啟動定時器,在待測程序段的結尾關閉定時器。為了測量的準確性,要
    的頭像 發表于 11-09 09:52 ?3979次閱讀
    淺析STM32代碼<b class='flag-5'>運行時間</b>的技巧

    ch32v307記錄程序運行時間

    ch32v307記錄程序運行時間程序開發中,很重要的一項任務就是對程序運行時間進行評估。對
    的頭像 發表于 08-22 15:53 ?960次閱讀

    變頻器帶動電機運行時發抖是怎么回事?

    頻率,則變頻器不輸出10-14Hz的頻率,直接跳過。帶動電機運行時產生抖動的處理方案以三菱變頻器帶動電機運行時產生抖動分析為例,如下:(一)、機械共振原因:機械共振
    的頭像 發表于 10-31 08:07 ?1508次閱讀
    變頻器帶動<b class='flag-5'>電機運行時</b>發抖是怎么回事?

    西門子SCL編程50臺電機運行時間累計方法

    當RUN信號為TRUE時,開始計時,為FALSE時停止計時,單次運行時間清零,長按RESET為5秒時,單次和總運行時間都清零。
    發表于 11-27 09:59 ?2083次閱讀
    西門子SCL編程50臺<b class='flag-5'>電機運行時間</b>累計方法

    jvm運行時內存區域劃分

    的內存區域劃分對于了解Java程序的內存使用非常重要,本文將詳細介紹JVM運行時的內存區域劃分。 JVM運行時內存區域主要劃分為以下幾個部分
    的頭像 發表于 12-05 14:08 ?581次閱讀

    變頻器帶動電機運行時發抖的原因及處理方法

    變頻器作為現代工業控制領域的重要設備,廣泛應用于電機調速控制中。然而,在實際應用中,有時會遇到變頻器帶動電機運行時產生抖動的問題。這種抖動不僅影響電機的正常運行,還可能對生產效率和設備
    的頭像 發表于 05-31 14:43 ?6070次閱讀
    主站蜘蛛池模板: 中国性猛交xxxxx免费看 | 成年人网站黄色 | 亚洲精品香蕉婷婷在线观看 | 日韩在线毛片 | 国产在线色 | 亚洲国产成人久久三区 | 日本黄色一级网站 | 美女好紧好大好爽12p | 亚洲qingse中文在线 | 又粗又大又猛又爽免费视频 | 日本一区二区三区不卡在线看 | 欧美色图色就是色 | 男人天堂网www | 啪啪激情综合 | 欧美精品久久天天躁 | 天天操伊人 | 手机在线精品视频 | 亚洲免费影视 | 秋霞一级特黄真人毛片 | 四虎成人在线视频 | 综合精品 | 色狠狠网 | 在线观看免费xx高清视频 | 亚洲a在线播放 | 一级毛片 在线播放 | 干夜夜| 日韩一级片在线 | 四虎8848精品永久在线观看 | 天天操狠狠| 一级做a爱片就在线看 | 69日本人xxxxxxxx18 | 一级特黄特色的免费大片视频 | 1024视频色版在线网站 | 三级在线观看视频网站 | 亚洲va国产va天堂va久久 | 午夜久久免影院欧洲 | 人人爽影院 | 蕾丝视频成人★在线观看 | 狠狠干狠狠插 | www.五月天| 欧美一卡二卡科技有限公司 |