用戶登陸
免費注冊
找回密碼
站內短信
論壇搜索
工控下載
用戶名
密碼
輸入驗證碼:
愛情
綜合討論
資料互助
程序樣例
三菱工控
西門子區
歐姆龍區
觸摸屏區
工控人家園
綜合討論
【萬泉河】征集FB的編程題:獲取SID
上一主題
下一主題
萬泉河
WX:ZHO6371995,歡迎+
級別: 略有小成
發送短信
加為好友
精華主題:
0
發帖數量:
152 個
工控威望:
285 點
下載積分:
925 分
在線時間: 12(小時)
注冊時間:
2021-06-11
最后登錄:
2025-07-01
查看萬泉河的
主題
/
回貼
樓主
發表于: 2022-01-23 11:00
全看
|
小
中
大
【萬泉河】征集
FB
的編程題:獲取
SID
我在推廣宣傳
PLC
編程煙臺方法的時候,
總有人疑惑是在做了什么。
講解是用計算機編程中的面向對象的方法來進行
PLC
編程。
那么在
PLC
中是用什么手段實現的面向對象呢?
回答是用
FB
,
做成庫函數應用。
然后對方瞬間就恍然大悟了,
FB
啊,
不是什么新玩意,我們
20
年前就會用了。
你這把
FB
換個高大上的名字,也太能忽悠人了。
原來做標準化就是開發
FB
啊
,
那我們正在做,或者早就在自己做了。你這做的沒啥稀奇的。
好吧。
如果對方既沒有感知到自身的痛點,
又沒有機會見過真正的應用實例,
那說破了嘴皮子對方也想象不出是啥樣子。
畢竟,
PLC
編程煙臺方法的實現是古今中外開天辟地以來都沒有過的,
大部分的
PLC
工程師包括我自己入行開始,都是從模仿入門的,沒有完全創新的經驗,在沒有見過豬跑之前讓他們想象出豬肉的味道,
確實有些難度。
我當然知道,
PLC
系統中早就有
FB
功能塊的功能,
也早已經用了二十多年。
但我自己能用面向對象的方法來做
PLC
程序,也不過近
2-3
年的事。
然而,
我同樣也知道,我們許多同行,盡管可能不懂得計算機高級語言編程,但對
FB
的各種理論技巧還是很熟練的。
我也見過一些比較復雜的
PLC
程序,看到里面非常豐富的
FB
的用法,但從中很明顯地可以看出來,設計者對
FB
原理是非常懂,然而卻沒有面向對象的理念。
也有過比較熟識的西門子網站的驅動板塊的版主,在了解到我的標準化編程理論之后就非常高傲地表示,
即便不算驅動方面的技能,僅僅拿
PLC
編程的經驗和水平
PK
,對我也照樣是不服的,完全可以一比高下。
我也只能攤手認慫,
不跟你比。
現在拋開面向對象,拋開標準化編程,
有一道比較有意思的題目,拋出來給大家練練手,可以算是檢驗下自己對
FB
的理解深度,同時對自己也算做個知識技能的儲備。
臨近春節假期,大家項目工作應該已經不太忙碌,可以有空閑時間為自己充充電了。
這里算是給大家提供一個學習方向。
題目的原委是這樣的,在
PLC
項目中
FB
功能塊的調用,通常被稱為實例,而一個
FB
有可能被調用多次,
那就是產生多個實例。
現在需要對每一個實例做出
ID
的標識,即為
SID
。
比方說一個
FB
在整個
OB1
環境中被調用了
10
次,
那么我希望它們分別得到從
1
到
10
連續且不相等的
ID
號。
這個功能的實現,
應該是一個完全封裝好的獨立完成功能的函數塊,
FB
或者
FC
。當然,因為它的實現還是比較復雜,我認為
FB
實現會比
FC
實現能方便些,
名字定義為
GetSID
。
有了這個
FB
,那么在需要區分
SID
的項目設備
FB
中,只需要調用一次函數,就可以得到了
SID
。
最好的結果是按照
OB1
執行的順序,
第一個調用的
ID=1,
第二個為
ID=2,
最后一個
ID=MAX
。
然后如果
PLC
調試過程中實例有增加或減少,不管是中間增減還是尾部的增補,都應該能刷新更新。
有人會疑問得到這個
SID
有啥用?
我順手就可以舉例出好多個應用場景。
比如。。。。。再比如。。。。,以及。。。。
然而,我非常了解咱們許多同行的調性,如果我把應用舉例描述詳細了,很多人會跑題去探究我所舉例具體的應用,
去用他自己的方式千方百計繞過
SID
,找方法實現。然后回過來再跟我證明獲取
SID
無意義。
所以具體舉例就不提了。標準化學習營的學員,可以積極參與實現這個應用,將來你們在具體的項目中會遇到這種需求的時候,我會適時與你們講解。
(這里也透漏出個信息,以往的標準化應用分享項目中并未用到
SID
)
為了鼓勵同行朋友積極參與,對成功實現功能并投稿的朋友,給出一點彩頭。獎勵方式三種,獲獎者三種之中任選一種:
1, PLC
標準化編程例程優惠
1000
元,所有品牌任選。
2,
《萬泉河著
PLC
標準化編程原理與實踐》書稿電子加密版。
3,
現金
100
元。
然后是具體要求:
1,
可以使用主流
PLC
任一品牌實現,不僅僅西門子,
也更不僅僅
TIA PORTAL
。
所以這是一場面向全行業的應用比武。
我相信所有品牌的
PLC
,都可以實現。
2,
編程語言建議使用
SCL
語言。因為這樣更會容易跨品牌跨平臺移植。
這也是我所以可以接受全行業所有品牌的原因。同時大家未來也可以了解,任何企業,只要實現了標準化編程,是可以實現跨平臺跨品牌移植的。比如
2021
年的斷貨危機,換品牌就易如反掌。
不會因為擔憂品牌更換而所有程序從頭再來。
3,
如果實在不會使用
SCL
,或者所用的
PLC
不支持
SCL
,
那么也可以用
LAD
來實現,并投遞交稿。不過,將來的獎勵需要減半。
4,
為了方便檢查評審功能,做好的程序塊請錄制運行監控視頻,動態顯示運行結果。交稿時除源程序外,視頻文件也一并提交。
5,
投稿截止時間為
2
月底,即現在起到正月期間均可參加。
只要認證功能完整有效,均給予獎勵。有意投稿者,可以先加我微信:
zho6371995,
進行預報名。
報名后在截止期之前完成正式交稿都可以。
到時如果有特殊情況需要延時,可以提前打招呼獲準。
6,
預報名限制人數
100
人,
正式獲獎人數限
30
人,
按交稿先后順序且功能正確者排名。
為了堵住一部分不懷好意的同行的嘴,
提防他們罵我低價購買別人的智力,
或者說我自己的問題沒有能力解決,換了個方式來找別人幫忙解決。
我截圖展示一下我已經實現的效果
:
我這里
SID
是得到了,
但
ID1
的位置是隨機的。并沒有嚴格地讓第一臺必須為
1
。
因為我這里應用誰是
ID=1
不重要,所以就沒有特意去實現了。
最后提醒大家多去讀我以往發表的文章,包括公眾號《
PLC
標準化編程》以及西門子論壇我開設的專欄《萬泉河講故事》,找不到路的百度或者微信搜一搜
”
【萬泉河】
”
,
我的所有文章標題都帶了這樣的標識。
好多文章,發表了很多年,逐漸都被遺忘了。
然而最近,有好多朋友提出的問題,
一看都是我在多年前發表文章中提及的技術或問題。
比如最近連續兩次不同的場合,針對網友的提問推薦了文章
【萬泉河】
PLC
編程求
3/8
的題目
http://www.ad.siemens.com.cn/club/bbs/PostStory.aspx?a_id=1256568&b_id=80&s_id=157&num=34#anch
問題都得到了解決。
說明,他們還是文章讀少了。
這篇文章看來對同行如此有用,那就在本文下面再發一次。以前已經讀過的請再次溫習一下。
分享
huanjue
級別: 略有小成
發送短信
加為好友
精華主題:
0
發帖數量:
152 個
工控威望:
437 點
下載積分:
521 分
在線時間: 304(小時)
注冊時間:
2018-12-24
最后登錄:
2025-04-13
查看huanjue的
主題
/
回貼
1樓
發表于: 2022-01-24 14:10
全看
|
小
中
大
引用
引用第6樓flyfeky于2022-01-24 11:15發表的 :
搞的故作高深 。 面向對象編程是有標準方法的。
看看倍福是怎么實現的。
.......
感謝大神的解釋,受益匪淺.
分享
上一主題
下一主題
工控人家園
綜合討論
【萬泉河】征集FB的編程題:獲取SID
http://www.wentianyingyuan.com
訪問內容超出本站范圍,不能確定是否安全
繼續訪問
取消訪問
精品国产一区二区三区AV蜜|一本加勒比HEZYO无码|91在线无码精品秘 入口九|天天干天天日天天射|亚洲无码私人影院