今天和同學們分享一個經典PLC編程方法 - 冒泡法。
我第一次在工作中見到冒泡法是應用在溫度排序當中。設備由多個溫度探頭,需要實時顯示最高溫度和最低溫度以便于調節設備的蒸汽量。
當時的PLC是S7-300,用的是STL語言。感覺語言精煉,短短幾行語句就把功能實現了,這也算是文本語言的魅力所在吧。
冒泡法 -通俗一點講,就是對一組數據進行遞增或者遞減的排序的方法。其算法是,對相鄰兩個數據進行比較,按照要求的大或小的要求,進行位置調換,以達到排序的目的。
下面以5個數據的數組為例講解:
第1輪比較后可以看到,8作為最大數據,被放在最后的位置。比較了4次(1+4=5).
第2輪比較后可以看到,6作為最大數據,被交換到8的前面。比較了3次(2+3=5)
第3輪比較后可以看到,5作為最大數據,被交換到6的前面。比較了2次(3+2=5)
第4輪比較后可以看到,3作為最大數據,被交換到5的前面。比較了1次(4+1=5)
各位同學是不是很容易看出上面數據的關系。也就是,輪數+比較次數 = 總共的數據個數。
這就是我們找到的關鍵點,既然有次數,那么在編程時候就會用到FOR循環指令。
下面給出流程圖:
根據流程圖給出SCL語言的編程過程:(n代表數組內數據的個數啊)
根據SCL編程思想,你自己嘗試寫一個程序吧!
審核編輯 :李倩
-
plc
+關注
關注
5012文章
13309瀏覽量
463730 -
數組
+關注
關注
1文章
417瀏覽量
25963 -
STL語言
+關注
關注
0文章
3瀏覽量
1197
原文標題:教你學編程21 - PLC SCL語言編程 - 冒泡法應用
文章出處:【微信號:非標設備自動化設計,微信公眾號:非標設備自動化設計】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論