色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創作中心

完善資料讓更多小伙伴認識你,還能領取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則表示的就是第三臺電機的運行時間最少,可以啟動這第三臺電機,這里我們需要用到表格指令及間接尋址。

程序:

總結

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

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

    關注

    98

    文章

    3129

    瀏覽量

    117733
  • 電機
    +關注

    關注

    143

    文章

    9248

    瀏覽量

    148333

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

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

收藏 1人收藏

    評論

    相關推薦
    熱點推薦

    如何縮短Vivado的運行時間

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

    獲取單片機運行時間

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

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

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

    ch32v307記錄程序運行時間

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

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

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

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

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

    jvm運行時內存區域劃分

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

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

    變頻器作為現代工業控制領域的重要設備,廣泛應用于電機調速控制中。然而,在實際應用中,有時會遇到變頻器帶動電機運行時產生抖動的問題。這種抖動不僅影響電機的正常運行,還可能對生產效率和設備
    的頭像 發表于 05-31 14:43 ?7314次閱讀
    主站蜘蛛池模板: 女人和男人插曲视频大全 | 四房播播最新地址 | 日日夜夜国产 | 99久久精品国产亚洲AV | 一级毛片免费视频网站 | 理论片午午伦夜理片I | AAA级精品无码久久久国片 | 国产午夜在线观看视频播放 | 国产精品日本一区二区在线播放 | 在线观看亚洲免费视频 | 2022国产91精品久久久久久 | 久久精品国产清白在天天线 | 成人中文字幕在线 | 天天躁日日躁狠狠躁中文字幕老牛 | 亚洲精品视频免费 | 韩日美无码精品无码 | 亚洲精品一二三 | Y8848高清私人影院软件优势 | 暖暖 免费 日本 高清 在线1 | 5g天天奭视频 | 国产学生无码中文视频一区 | 26uuu老色哥| 国产精品自产拍在线观看网站 | 亚洲国产精品第一影院在线观看 | 91精品国产色综合久久 | 乳巨揉みま痴汉电车中文字幕动漫 | 国产欧美精品一区二区色综合 | 亚洲男同tv| 凹凸精品视频分类视频 | 亚洲欧美自拍清纯中文字幕 | 暖暖的高清视频在线观看免费中文 | 亚洲精品123区 | 最新高清无码专区 | 国产精品成人观看视频免费 | 龙腾亚洲人成电影网站 | 热九九99香蕉精品品 | 国产精品麻豆a在线播放 | 久久福利影院 | 亚洲精品视频区 | 黄得让人湿的片段 | 久就热视频精品免费99 |

    電子發燒友

    中國電子工程師最喜歡的網站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品