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

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

3天內不再提示

一個經(jīng)典PLC編程方法 - 冒泡法

jizhongyingAI ? 來源:非標設備自動化設計 ? 2023-02-20 09:53 ? 次閱讀

今天和同學們分享一個經(jīng)典PLC編程方法 - 冒泡法。

我第一次在工作中見到冒泡法是應用在溫度排序當中。設備由多個溫度探頭,需要實時顯示最高溫度和最低溫度以便于調節(jié)設備的蒸汽量。

當時的PLC是S7-300,用的是STL語言。感覺語言精煉,短短幾行語句就把功能實現(xiàn)了,這也算是文本語言的魅力所在吧。

冒泡法 -通俗一點講,就是對一組數(shù)據(jù)進行遞增或者遞減的排序的方法。其算法是,對相鄰兩個數(shù)據(jù)進行比較,按照要求的大或小的要求,進行位置調換,以達到排序的目的。

下面以5個數(shù)據(jù)的數(shù)組為例講解:

1c6d92f6-b0b6-11ed-bfe3-dac502259ad0.png

第1輪比較后可以看到,8作為最大數(shù)據(jù),被放在最后的位置。比較了4次(1+4=5).

第2輪比較后可以看到,6作為最大數(shù)據(jù),被交換到8的前面。比較了3次(2+3=5)

第3輪比較后可以看到,5作為最大數(shù)據(jù),被交換到6的前面。比較了2次(3+2=5)

第4輪比較后可以看到,3作為最大數(shù)據(jù),被交換到5的前面。比較了1次(4+1=5)

各位同學是不是很容易看出上面數(shù)據(jù)的關系。也就是,輪數(shù)+比較次數(shù) = 總共的數(shù)據(jù)個數(shù)。

這就是我們找到的關鍵點,既然有次數(shù),那么在編程時候就會用到FOR循環(huán)指令。

下面給出流程圖:

1caeef44-b0b6-11ed-bfe3-dac502259ad0.png

根據(jù)流程圖給出SCL語言的編程過程:(n代表數(shù)組內數(shù)據(jù)的個數(shù)啊)

1d014dca-b0b6-11ed-bfe3-dac502259ad0.png

根據(jù)SCL編程思想,你自己嘗試寫一個程序吧!

審核編輯 :李倩

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

    關注

    5012

    文章

    13304

    瀏覽量

    463597
  • 數(shù)組
    +關注

    關注

    1

    文章

    417

    瀏覽量

    25960
  • STL語言
    +關注

    關注

    0

    文章

    3

    瀏覽量

    1197

原文標題:教你學編程21 - PLC SCL語言編程 - 冒泡法應用

文章出處:【微信號:非標設備自動化設計,微信公眾號:非標設備自動化設計】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    分享12經(jīng)典PLC編程電路

    PLC自動化控制的學習,需要理論知識和實踐經(jīng)驗的結合,動手能力也很重要,只有不斷的實踐操作,才能將學到的PLC知識應用在實踐和實際電路中,動手實踐是PLC初學者快速進步的不二法門,今天我們就分享12
    發(fā)表于 09-29 09:37 ?2327次閱讀

    labview 版的冒泡排序

    labview 版的冒泡排序,只是想用Labview表達冒泡的思想,
    發(fā)表于 06-05 11:18

    小鳥求助冒泡排序。

    小鳥剛開始學labview,昨天在公司突然想起C語言里的冒泡排序,想用labVIEW來實現(xiàn),但是做不出來。有沒有高手能幫忙寫個當例子學習下。說明下和C語言里樣用數(shù)組做。小鳥在這里謝過了。
    發(fā)表于 01-09 21:54

    常用排序 ——冒泡排序和選擇排序

    冒泡排序的具體實現(xiàn)方法是這樣的,從數(shù)組的第一個元素`arr[0]`開始,兩兩比較**(`arr[n],arr[n+1]`),如果前面的數(shù)大于后面的數(shù)(`arr[n] > arr[n
    發(fā)表于 11-01 12:25

    冒泡排序三部曲の、冒泡排序原理版

    的類型就多進行3x4次排序,為了解決這個問題,對冒泡排序進行進步優(yōu)化,將在冒泡排序三部曲の二、冒泡
    發(fā)表于 09-12 10:30

    冒泡排序三部曲の冒泡排序原理版()

    ;, array[n]);printf("\t");//空格次}return 0;}運行結果上述代碼沒有問題,但是如果數(shù)組是類似{1,2,3,5,4}這樣的類型就多進行3x4次排序,為了解決這個問題,對冒泡排序進行進
    發(fā)表于 09-12 10:42

    冒泡排序三部曲の二冒泡排序的優(yōu)化

    本帖最后由 盧小二 于 2019-9-14 11:23 編輯 環(huán)境:VS2017C language在冒泡排序三部曲の冒泡排序
    發(fā)表于 09-13 12:17

    冒泡排序的具體實現(xiàn)方法是什么?

    什么是冒泡排序?冒泡排序的具體實現(xiàn)方法是什么?
    發(fā)表于 07-15 06:48

    冒泡排序的泛型實現(xiàn)

    冒泡排序的泛型實現(xiàn),自用筆記!
    發(fā)表于 01-20 07:22

    C語言冒泡、插入、選擇排序算法分析

    C語言冒泡、插入、選擇排序算法分析
    發(fā)表于 09-06 15:51 ?44次下載

    PLC編程的幾種方法

    PLC控制系統(tǒng)是依靠程序進行控制,程序設計是PLC應用中最關鍵的問題,下面來講PLC編程方法
    發(fā)表于 05-03 11:21 ?1.4w次閱讀

    常用的三種PLC編程方法

    常用的PLC編程方法有經(jīng)驗、解析、圖解法。
    發(fā)表于 05-03 17:45 ?7139次閱讀

    plc編程的幾種方法總匯

    方法常用的plc編程方法有經(jīng)驗、解析和圖解法。 1、體驗
    發(fā)表于 01-17 10:21 ?6163次閱讀

    經(jīng)典PLC編程案例分享

    三菱PLC編程怎么入門?從經(jīng)典PLC編程案例開始
    的頭像 發(fā)表于 09-01 16:01 ?2770次閱讀

    PLC的五大編程技術方法

    PLC編程方法大體上有 5 種:經(jīng)驗、解析、圖解法、技巧及計算機輔助設計
    的頭像 發(fā)表于 05-15 10:25 ?5440次閱讀