实时时钟-plc时钟与边缘计算时钟
前言:??
?
? ? ? 對于大部分OEM廠商來說,PLC的使用更多會關注本身的運行穩定和響應效率上。但是隨著上位機、MES系統、邊緣計算等新技術引入,OEM廠商技術也會迎來新一輪技術更新。????
? ? ? 今天討論的一個話題就是一個好好的例子,原始設備的實時時鐘應用。
?
? ? ? ?故事是這樣的,有一個項目需要北京時間八點準時運行PLC的某個功能。常見的做法是,上位機實時信號輸出就可以,但是現場設備是網絡孤島沒有與上位機進行一個連接。
? ? ? ?以西門子200smart為例,
? ? ? ?方法一,利用0.5s脈沖信號,運用累加器進行計時。(誤差很大,不適用,本次不介紹)
? ? ? ?方法二,利用程序自帶時鐘,CPU斷電狀態下可保持7天,時鐘精度是±120 秒/月。若增加電池板(SB BA01),可以維持到1年時間。(精度校準,但是也不能確保準時。)
? ? ? ?方法三,利用邊緣計算網關,進行邊緣計算程序獲取實時時間。
?
1.? PLC時鐘
1.1硬件介紹
PLC:西門子200smart系列
?
1.2時鐘設置
第一步,找到時鐘指令。
第二步,設置讀取時鐘指令。
以VB10為例,VB10-VB17字節分別存放年,月,日,小時,分,秒,保留(始終為00),星期幾(由于國外原因,起始為星期日,所以1=星期日,7=星期六)。
?
第三步,同步時間
?
?
2.邊緣計算網關實時時鐘
2.1硬件介紹
PLC:西門子200smart系列
4G網關:國產名優
?
2.2邊緣計算腳本
第一步,新建腳本
?
第二步,創建變量,使用Date類,獲取實時時間。
代碼如下:
// 獲取當前時間
??? var date =new Date();//使用Date類
??? //讀取年,返回年份四位數字
??? var year =date.getFullYear();
??? //讀取月,返回月數值0~11,需要增加1
??? var month=date.getMonth()+1;
??? //讀取日期,返回數值(1~31)
??? var day=date.getDate();
??? //讀取小時,返回數值(0~24)
??? var hour=date.getHours();
??? //讀取分鐘,返回數值(0~59)
??? var minute=date.getMinutes();
??? //讀取秒,返回數值(0~59)
??? var second =date.getSeconds();
?
第三步,保存并執行。
?
第四步,驗證時間
?
?
3.經驗總結
? ? ? 邊緣計算的引入使得原始設備具有更大的活力,特別是數十個甚至數百個設備同時運轉的時候,邊緣計算能夠大大減輕中控處理的量和響應時間。一個技術的創新就會引發多個行業的革新,OEM廠商將面臨一輪又一輪新的革新。
? ? ? ? 喜歡我的文章的朋友,麻煩幫我點個贊,你們的支持是我最大的動力。
?
總結
以上是生活随笔為你收集整理的实时时钟-plc时钟与边缘计算时钟的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前沿 | 5G尚未发现明显漏洞?周鸿祎:
- 下一篇: 自定义xml背景