蔣夢云 尚雨欣
關(guān)鍵詞:CC2530;4G模塊;ZigBee組網(wǎng);制藥車間
中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2024)03-0085-03
0 引言
數(shù)字制藥車間是一種新型制造車間,作為實(shí)現(xiàn)智能制藥的關(guān)鍵環(huán)節(jié),能夠顯著提高生產(chǎn)效率、降低生產(chǎn)成本,同時也能帶來更高的生產(chǎn)質(zhì)量和產(chǎn)品精度以及更高的生產(chǎn)安全性。數(shù)字車間通過融合互聯(lián)網(wǎng)、云計(jì)算、大數(shù)據(jù)等前沿技術(shù),實(shí)現(xiàn)生產(chǎn)設(shè)備信息的實(shí)時監(jiān)測和追溯、智能化的生產(chǎn)調(diào)度以及生產(chǎn)過程的可視化管理等多種功能。此外,數(shù)字車間還可以通過人機(jī)協(xié)作等方式,優(yōu)化生產(chǎn)工藝流程,提高生產(chǎn)效率和生產(chǎn)質(zhì)量,從而最大化地實(shí)現(xiàn)生產(chǎn)資源的利用效益。在智能制造的趨勢下,數(shù)字車間將會發(fā)揮更加重要的作用,為制藥產(chǎn)業(yè)的發(fā)展注入新的動力[1]。
1 總體設(shè)計(jì)
在數(shù)字制藥車間的無線IOT 設(shè)計(jì)中,通過選型和設(shè)計(jì),最終選用了CC2530作為主控芯片。CC2530能夠勝任各種復(fù)雜的物聯(lián)網(wǎng)應(yīng)用需求。同時,構(gòu)建了兩個節(jié)點(diǎn),負(fù)責(zé)連接不同類型的傳感器,這樣一來,就能夠更好地監(jiān)測制藥車間的各種數(shù)據(jù)。每個節(jié)點(diǎn)都有其獨(dú)特的地址,這是為了區(qū)分不同的節(jié)點(diǎn)和傳感器數(shù)據(jù)。節(jié)點(diǎn)能夠?qū)⑹占降臄?shù)據(jù)按照MQTT協(xié)議進(jìn)行封裝,然后發(fā)送給主控芯片[2]。
作為網(wǎng)絡(luò)中的協(xié)調(diào)器(Coordinator) ,主控芯片負(fù)責(zé)管理網(wǎng)絡(luò)中的各個節(jié)點(diǎn),確保它們能夠正常工作并接收存儲來自節(jié)點(diǎn)發(fā)送過來的消息。當(dāng)接收到消息后,主控芯片會通過串口將數(shù)據(jù)發(fā)送給終端設(shè)備,如PC或手機(jī)等。
終端設(shè)備通過串口與主控芯片進(jìn)行通信,發(fā)送請求命令。主控芯片將會從存儲器中提取相應(yīng)的數(shù)據(jù),然后發(fā)送給終端設(shè)備。終端設(shè)備將接收到的數(shù)據(jù)顯示在Web端,用戶可以通過Web界面查看和分析這些數(shù)據(jù),從而更好地了解制藥車間的運(yùn)行情況,整體系統(tǒng)搭建如圖1所示。
1.1 IoT 端設(shè)計(jì)
項(xiàng)目利用物聯(lián)網(wǎng)技術(shù)(IOT) ,借助各類傳感器,如溫濕度傳感器、氣體傳感器等,對車間和倉庫內(nèi)部環(huán)境狀態(tài)進(jìn)行實(shí)時監(jiān)測,同時將收集的數(shù)據(jù)轉(zhuǎn)換成數(shù)字信號。隨后,利用無線網(wǎng)絡(luò)模塊,將數(shù)據(jù)封裝成符合MQTT協(xié)議格式的消息,并發(fā)布至特定主題(Topic) 上。在阿里云IOT平臺上,創(chuàng)建了一個物理類模型(ThingModel) ,詳細(xì)定義了設(shè)備的屬性、事件和服務(wù),實(shí)現(xiàn)與設(shè)備的雙向通信。當(dāng)設(shè)備向阿里云IOT平臺發(fā)布消息時,平臺將根據(jù)物理類模型對消息進(jìn)行解析,同時將數(shù)據(jù)存儲至數(shù)據(jù)庫,并可通過Web可視化開發(fā)工作臺或API接口進(jìn)行信息展示與處理[3]。
核心代碼如下:
def process_data(data):
# 調(diào)用人工智能模型捕捉監(jiān)控數(shù)據(jù)
for d in data:
image_data = capture_image()
image_data = preprocess_image(image_data)
predictions = model.predict(image_data)
predicted_class = np.argmax(predictions)
predicted_class_name = class_names[pre?dicted_class]
print(f"Predicted class: {predicted_class_name}")
return
if __name__ == "__main__":
thread = threading.Thread(target=publish_thread)
thread.start()
while True:
# read sensor data
temperature = read_temperature()
humidity = read_humidity()
gas_level = read_gas()
publish_data(temperature, humidity, gas_level)
time.sleep(5)
thread.join()
1.2 Web 云端設(shè)計(jì)
項(xiàng)目基于阿里云提供的物聯(lián)網(wǎng)應(yīng)用開發(fā)工具—IOT Studio,利用其可視化應(yīng)用開發(fā)、服務(wù)開發(fā)等功能,快速構(gòu)建了一個適合物聯(lián)網(wǎng)場景的Web頁面模型。該模型可實(shí)時展示車間和倉庫內(nèi)的環(huán)境參數(shù)數(shù)據(jù),并賦予相應(yīng)的控制功能。在IOT Studio平臺上,通過拖拽組件、配置屬性、編寫腳本等方式,在云端IDE 框架下進(jìn)行可視化設(shè)計(jì),無須關(guān)注底層技術(shù)細(xì)節(jié),降低了開發(fā)難度和成本。同時,IOT Studio還支持與阿里云物聯(lián)網(wǎng)平臺、華為云IOT平臺等其他物聯(lián)網(wǎng)云服務(wù)進(jìn)行集成和對接,實(shí)現(xiàn)數(shù)據(jù)流轉(zhuǎn)和管理。
2 硬件模塊實(shí)現(xiàn)
在硬件模塊的設(shè)計(jì)環(huán)節(jié),首要考慮的是各類傳感器與執(zhí)行器的選型及電路設(shè)計(jì)。為了滿足數(shù)字制藥車間的實(shí)際需求,可以選擇包括溫度、濕度、壓力、液位等傳感器以及如電磁閥、電機(jī)等各種執(zhí)行器。而在電路設(shè)計(jì)上,需要細(xì)致考慮電源管理、信號處理以及接口設(shè)計(jì)等問題。
2.1 車間環(huán)境監(jiān)測模塊
車間模塊通過部署溫濕度傳感器、土壤濕度傳感器、MQ7等多個傳感器,組成一個網(wǎng)絡(luò)監(jiān)測節(jié)點(diǎn),用于實(shí)時采集車間的溫度、濕度、水浸和CO濃度等環(huán)境參數(shù)。這些傳感器具有較高的測量精度和穩(wěn)定性,能夠?qū)崿F(xiàn)對藥品生產(chǎn)環(huán)境的精確監(jiān)測。
其中,土壤傳感器利用土壤水分與土壤電導(dǎo)率之間的密切關(guān)系,即當(dāng)土壤含水量增加時,土壤電導(dǎo)率也相應(yīng)增加;反之則減小。不同類型的傳感器還支持溫度補(bǔ)償、校準(zhǔn)曲線等功能,進(jìn)一步提高了測量精度和穩(wěn)定性。
2.2 倉庫環(huán)境監(jiān)測模塊
為確保藥品保存環(huán)境的適宜性,構(gòu)建了一個傳感器網(wǎng)絡(luò)節(jié)點(diǎn),該節(jié)點(diǎn)集成了溫濕度傳感器、光敏傳感器、火焰?zhèn)鞲衅鞯仍O(shè)備,可實(shí)時采集倉庫的溫度、濕度、光敏、火焰值等關(guān)鍵參數(shù)。這些傳感器在組網(wǎng)節(jié)點(diǎn)中發(fā)揮著重要作用,提供了直觀、實(shí)時的環(huán)境監(jiān)測數(shù)據(jù)。
這些傳感器節(jié)點(diǎn)通過組網(wǎng)連接,將監(jiān)測數(shù)據(jù)傳輸?shù)胶笈_管理系統(tǒng),實(shí)現(xiàn)對藥品倉庫環(huán)境的實(shí)時監(jiān)控和預(yù)警。這種智能化的監(jiān)測方式能夠提高制藥車間的生產(chǎn)效率和產(chǎn)品質(zhì)量,確保藥品的安全性和有效性。
3 軟件模塊實(shí)現(xiàn)
軟件模塊,以設(shè)計(jì)驅(qū)動軟件為核心,介紹制藥車間系統(tǒng)的軟件模塊。該軟件系統(tǒng)主要分為兩個模塊:環(huán)境監(jiān)測模塊和安全防護(hù)模塊。
3.1 環(huán)境監(jiān)測模塊
環(huán)境監(jiān)測模塊作為軟件系統(tǒng)的核心之一,主要用于采集環(huán)境信息。它涵蓋了溫度、濕度、火焰等參數(shù)的檢測,并將這些數(shù)據(jù)實(shí)時傳輸至計(jì)算機(jī)進(jìn)行深入的數(shù)據(jù)處理及分析。這一模塊不僅提供了對車間環(huán)境的實(shí)時監(jiān)控,還為制藥過程提供了必要的數(shù)據(jù)支持。
此模塊主要用于車間及廠房的數(shù)據(jù)監(jiān)測。它可以實(shí)時采集車間及廠房的各種數(shù)據(jù),如溫度、濕度、火焰等環(huán)境參數(shù),以及機(jī)器設(shè)備的運(yùn)行狀態(tài)等信息,并將這些數(shù)據(jù)傳輸?shù)接?jì)算機(jī)上進(jìn)行處理和分析。這樣可以幫助工作人員及時發(fā)現(xiàn)異常情況,提高生產(chǎn)效率。
3.2 安全防護(hù)模塊
另一個模塊是安全防護(hù)模塊,它的主要功能是報警。當(dāng)環(huán)境參數(shù)超出預(yù)設(shè)范圍時,這一模塊會自動觸發(fā)報警機(jī)制,及時提醒工作人員進(jìn)行處理,為制藥車間的安全運(yùn)行提供了有力保障。包含LED顯示燈和蜂鳴器,顯示燈模塊主要用于LED燈的顯示,當(dāng)參數(shù)達(dá)到設(shè)定的閾值時,相應(yīng)顏色的LED顯示燈會亮。例如,當(dāng)水浸超過設(shè)定的閾值時,黃色LED燈會亮;當(dāng)火焰超過設(shè)定的閾值時,紅色LED燈會亮。這樣的設(shè)計(jì)方便工作人員及時發(fā)現(xiàn)環(huán)境異常情況,并采取相應(yīng)的處理措施。對于蜂鳴器模塊,當(dāng)達(dá)到設(shè)定參數(shù)時,蜂鳴器會自動響應(yīng),以提醒工作人員進(jìn)行維護(hù)。
4 Web 可視化模塊實(shí)現(xiàn)
為了提升車間及倉庫的安全性和效率,采用了物聯(lián)網(wǎng)技術(shù)來收集和分析各種環(huán)境數(shù)據(jù)。通過Web可視化開發(fā)工作臺,構(gòu)建了一個簡潔明了的操作和查看界面。這個界面主要分為兩部分:數(shù)據(jù)監(jiān)測部分和控制分析部分[4]。
4.1 數(shù)據(jù)監(jiān)測部分
在此部分中,可以實(shí)時顯示車間內(nèi)的溫度、濕度、火焰、水浸等參數(shù),以及倉庫內(nèi)的溫度、濕度、CO含量、光照度等參數(shù)。用戶可以根據(jù)實(shí)際需求設(shè)置閾值和報警方式。一旦某些參數(shù)超過或低于預(yù)設(shè)閾值,系統(tǒng)將自動發(fā)送短信或郵件提醒用戶,同時在界面上顯示醒目的紅色警示標(biāo)志。通過將各個傳感器所檢測到的數(shù)據(jù)呈現(xiàn)于云端,并進(jìn)行展示與對比,可以實(shí)時監(jiān)控車間及倉庫內(nèi)的環(huán)境參數(shù)。這些傳感器包括溫濕度傳感器、MQ7氣體傳感器以及光照度傳感器等,它們通過無線網(wǎng)絡(luò)將數(shù)據(jù)傳輸至云端服務(wù)器。
核心代碼如下:
# Init SMS Client
sms_client = AcsClient(access_key_id, ac?cess_key_secret, 'cn-hangzhou')
def send_sms(phone_number, alarm_type):
request = CommonRequest()
request.set_method('POST')
request.set_domain('dysmsapi.aliyuncs.com')
request.set_version('2017-05-25')
request.set_action_name('SendSms')
request. add_query_param('TemplateParam', '{"type":"%s"}' % alarm_type)
response = sms_client.do_action_with_exception(re?quest)
print(str(response, encoding='utf-8'))
# Init AliCloud Voice Service
voice_client = AcsClient(access_key_id, ac?cess_key_secret, 'cn-hangzhou')
def send_voice(phone_number, alarm_type):
request = SingleCallByTtsRequest. SingleCallByTt?sRequest()
request.set_accept_format('json')
request.set_tts_code('
request.set_called_number(phone_number)
request. set_tts_param('{"type": "% s"}' % alarm_type)
response = voice_client. do_action_with_exception(request)
print(str(response, encoding='utf-8'))
# Get Device data from Iot
def get_latest_data(device_name):
# Use SDK
return {"temperature": 28, "humidity": 50, "flame":0, "water": 0}
# 判斷數(shù)據(jù)是否超過閾值,并發(fā)送報警信息
def check_alarm(data, threshold, phone_number,alarm_type):
if data['temperature'] > threshold['temperature']:
print("溫度超過閾值,發(fā)送報警信息!")
send_sms(phone_number, alarm_type)
send_voice(phone_number, alarm_type)
elif data['humidity'] > threshold['humidity']:
print("濕度超過閾值,發(fā)送報警信息!")
send_sms(phone_number, alarm_type)
send_voice(phone_number, alarm_type)
elif data['water'] > threshold['water']:
print("水浸超過閾值,發(fā)送報警信息!")
send_sms(phone_number, alarm_type)
send_voice(phone_number, alarm_type)
else:
print("數(shù)據(jù)正常,不需要發(fā)送報警信息。")
4.2 控制分析部分
控制界面部分則允許用戶遠(yuǎn)程控制車間和倉庫內(nèi)的報警設(shè)備。用戶可以根據(jù)實(shí)時數(shù)據(jù)或預(yù)設(shè)模式進(jìn)行調(diào)整,從而優(yōu)化車間及倉庫的工作環(huán)境。不僅如此,用戶還可以將不同時間段或不同位置的數(shù)據(jù)進(jìn)行對比與統(tǒng)計(jì),從而發(fā)現(xiàn)存在的問題并優(yōu)化相應(yīng)的方案。這樣的方式,不僅提供了便捷的數(shù)據(jù)監(jiān)測方式,也為企業(yè)提供了有效的決策依據(jù)[5]。
此外,為了讓用戶更好地了解外部天氣情況,我們利用墨跡App提供的天氣預(yù)報接口,在界面上顯示當(dāng)前位置和時間的天氣狀況、溫度、風(fēng)力、空氣質(zhì)量等信息。這一切的設(shè)計(jì)都是為了提高工作效率和安全性,為用戶提供更便捷、更智能的工作環(huán)境,如圖2 所示。
5 Mobile 頁面實(shí)現(xiàn)
通過將各個傳感器所檢測到的數(shù)據(jù)呈現(xiàn)于云端,并進(jìn)行展示與對比,可以實(shí)時監(jiān)控車間及倉庫內(nèi)的環(huán)境參數(shù)。這些傳感器包括溫濕度傳感器、MQ7氣體傳感器以及光照度傳感器等,它們通過無線網(wǎng)絡(luò)將數(shù)據(jù)傳輸至云端服務(wù)器。
在云端服務(wù)器上,運(yùn)用Mobile可視化開發(fā)工作臺構(gòu)建了一個數(shù)據(jù)展示界面,使得用戶可以輕松地查看并分析各個傳感器所檢測到的數(shù)據(jù)。還可以將不同時間段或不同位置的數(shù)據(jù)進(jìn)行對比與統(tǒng)計(jì),從而發(fā)現(xiàn)存在的問題并優(yōu)化相應(yīng)的方案。
6 釘釘端模塊實(shí)現(xiàn)
釘釘端可以實(shí)時推送設(shè)備上下線、設(shè)備檢測數(shù)據(jù)、閾值報警等多種消息,這種實(shí)時推送方式可以讓群成員即時獲取到很多有用信息。這不僅提高了團(tuán)隊(duì)協(xié)作效率,也使得信息共享更加便捷和高效。同時,釘釘群實(shí)時推送還能夠與其他釘釘功能結(jié)合使用,例如與日程安排相結(jié)合,自動將重要日程和任務(wù)提醒推送至群內(nèi),提醒群成員關(guān)注和處理。此外,釘釘還支持在群聊中添加機(jī)器人,可以定制機(jī)器人的自動回復(fù)規(guī)則,實(shí)現(xiàn)自動化的即時通信,方便簡潔,增加工作效率??偟膩碚f,釘釘?shù)膶?shí)時推送功能為團(tuán)隊(duì)協(xié)作、項(xiàng)目管理和信息共享提供了全新的解決方案,讓工作更加高效便捷,更加智能化。
7 結(jié)論
本文介紹了一種基于阿里云的無線IOT在數(shù)字制藥車間應(yīng)用系統(tǒng),該系統(tǒng)針對我國制藥產(chǎn)業(yè)在生產(chǎn)環(huán)境控制方面存在的問題,提出了一種新穎、高效、可靠、低成本的解決方案。該系統(tǒng)利用溫度、濕度、火焰、MQ-7氣體等多種傳感器,分別部署在車間和倉庫內(nèi)部和外部,采集各項(xiàng)數(shù)據(jù)指標(biāo),并通過分布式網(wǎng)絡(luò)節(jié)點(diǎn)將數(shù)據(jù)實(shí)時上傳到網(wǎng)關(guān)設(shè)備。網(wǎng)關(guān)設(shè)備負(fù)責(zé)將數(shù)據(jù)轉(zhuǎn)發(fā)到云端服務(wù)器,并進(jìn)行數(shù)據(jù)處理和分析。該系統(tǒng)采用基于ZigBee協(xié)議的組網(wǎng)方式,在保證通信質(zhì)量和穩(wěn)定性的同時,降低功耗和成本,并實(shí)現(xiàn)多個車間及倉庫之間的數(shù)據(jù)聯(lián)網(wǎng)。通過云端平臺,用戶可以實(shí)時動態(tài)地監(jiān)測工廠運(yùn)行狀態(tài),并根據(jù)預(yù)警信息及時調(diào)整生產(chǎn)參數(shù)或采取應(yīng)急措施,從而提高制藥工廠的安全性和生產(chǎn)效率。
【通聯(lián)編輯:梁書】