劉 凱,陳思敏,陳 斌
(1.廣東機電職業(yè)技術(shù)學(xué)院電氣技術(shù)學(xué)院,廣州 510550;2.廣州高譜技術(shù)有限公司,廣州 513623)
自動發(fā)藥機作為藥房的核心設(shè)備,在縮短患者排隊候藥時間、降低藥師配藥勞動強度、提高藥房自動化程度等方面發(fā)揮了不可替代的作用[1]。目前,盒裝藥品(西藥、中成藥)的自動發(fā)藥機已比較成熟[2-3],但中藥房的傳統(tǒng)中藥飲片由于形態(tài)各異,較難實現(xiàn)自動化發(fā)藥。近幾年來,大多數(shù)中醫(yī)類醫(yī)療機構(gòu)的中藥房普遍采用“中藥飲片+中藥配方顆粒袋”組合的發(fā)藥方式[4]。本研究利用配方顆粒袋尺寸規(guī)格一致這一特點[5],以PLC可編程控制器為控制核心,觸摸屏和組態(tài)軟件為上位機監(jiān)控系統(tǒng),抓藥機械手、搬運機械臂和分藥裝袋機構(gòu)為主體控制對象,進行了中藥配方顆粒袋自動發(fā)藥機控制系統(tǒng)的設(shè)計與開發(fā),以期為中藥藥房自動化改造提供參考。
本課題組設(shè)計的中藥配方顆粒袋發(fā)藥機(發(fā)明專利號:ZL0151701703.1)實物如圖1所示,其結(jié)構(gòu)如圖2所示。發(fā)藥機由儲藥架、抓藥機械手、搬運機械臂和分藥裝袋機構(gòu)組成。搬運機械臂由1個豎直方向的鏈傳動模組和2個水平方向的同步帶傳動模組組成;分藥裝袋機構(gòu)由2個輸送帶、1個出藥口和1個分藥裝袋機器人組成。
發(fā)藥機的工作流程如下。
(1)確定藥品位置和抓藥路徑。與醫(yī)院信息管理系統(tǒng)(HIS)對接的藥品管理軟件首先確定藥品種類和數(shù)量,然后進行路徑優(yōu)化并將結(jié)果信息發(fā)送到PLC控制器。
(2)抓藥。2 個抓藥機械手在搬運機械臂的帶動下提升至儲藥機構(gòu)最高一層,抓藥機械手從上向下按照系統(tǒng)已優(yōu)化的路徑逐層抓取顆粒袋。
(3)分藥裝袋。抓藥機械手每次從藥盒成功抓取配方顆粒袋后,自動釋放藥品,顆粒袋在重力作用下自行掉落到輸送帶上,藥品集中匯集到出藥口,機器人自動完成分藥和裝袋動作。
圖1 發(fā)藥機實物圖
圖3 所示為控制系統(tǒng)原理圖。觸摸屏和組態(tài)軟件構(gòu)成上位機監(jiān)控系統(tǒng)軟件。觸摸屏用于本機調(diào)試、參數(shù)設(shè)定、手動選擇藥劑和狀態(tài)監(jiān)控;組態(tài)軟件用于藥品管理、處方設(shè)定、數(shù)據(jù)庫存儲等。在執(zhí)行部件的控制上,PLC 作為系統(tǒng)的核心控制器,通過I/O控制搬運機械臂、抓藥機械手和分藥裝袋機構(gòu)的實時運動。
圖2 發(fā)藥機結(jié)構(gòu)簡圖
圖3 控制系統(tǒng)原理圖
根據(jù)系統(tǒng)設(shè)計要求,本系統(tǒng)所選用的主要硬件產(chǎn)品如下。
(1)觸摸屏配置。觸摸屏選用昆侖通泰TP1061TX型,與PLC之間采用串口RS232接口通訊。
(2)組態(tài)軟件配置。組態(tài)軟件選用組態(tài)王6.55 版進行圖形界面的設(shè)計、運行和調(diào)試。
(3)PLC 配置??紤]到系統(tǒng)性能要求和現(xiàn)場試驗環(huán)境,采用可靠性高、抗干擾能力強、工作穩(wěn)定的三菱FX3U 系列PLC作為核心控制器,共24點輸入,24點輸出,電源輸入為220 V AC,輸出為24 V和+5 V DC。
(4)伺服電機及驅(qū)動器配置。選用中達電通產(chǎn)臺達伺服電機及驅(qū)動器。鏈傳動模組使用的伺服電機額定功率為1.5 kW,同步帶傳動模組使用的伺服電機額定功率為0.4 kW,所有伺服電機配置減速比為1∶10的行星減速器。
(5)機器人配置。分藥抓藥機器人選擇的是ABB IRB 120型工業(yè)機器人,該款機器人為6軸通用機器人,可用于搬運、碼垛、焊接等場合,最大負(fù)載為3 kg,工作范圍達580 mm。
本系統(tǒng)2 個抓藥機械手初始位置在儲藥架的第一排,抓藥時從上向下協(xié)同配合依次從待抓藥盒中抓取顆粒袋。當(dāng)控制系統(tǒng)獲得發(fā)藥單上待抓藥品的種類和數(shù)量信息后,系統(tǒng)首先要進行路徑規(guī)劃,確定每個抓藥機械手要抓的藥盒和路徑,從而避免發(fā)生抓藥機械手閑置等待和時間浪費的現(xiàn)象。
假設(shè)發(fā)藥單上的待抓藥盒在圖4 中用灰色方框表示,不抓藥品用白色方框表示,借鑒多旅行商問題數(shù)學(xué)模型,提出如下假設(shè):
(1)2個抓藥機械手為純抓取,不運輸顆粒袋;
(2)每個藥盒的抓取只能由一個機械手完成,且所有藥盒位置都應(yīng)該到達;
(3)機械手出發(fā)點與藥盒、各藥盒之間的距離已知,要求機械手一次行走的最大距離要大于其抓取路徑的長度。
圖4 中藥發(fā)藥機平面圖
設(shè)有K個抓藥機械手,需要到L個藥盒抓取,di,j(i,j=1,2,…,L),d0j為出發(fā)點到各藥盒的距離,nk為機械手k 抓取的藥盒總數(shù),當(dāng)nk=0時,表示機械手沒有抓取任何藥盒;集合Rk為機械手k抓取的藥盒點集合,其中的元素rki為該藥盒在機械手k的抓取路線中的順序為i,rk0為該機械手k的出發(fā)點。
抓藥路徑數(shù)學(xué)模型如下:
上述表達式中,式(1)為目標(biāo)抓取總距離最??;式(2)表示每條路徑上藥盒數(shù)量不超過總的藥盒數(shù);式(3)為每個藥盒均得到抓取;式(4)為每條路徑的需求點組成;式(5)為判斷機械手k是否參與配送。
本文涉及到一種多旅行商問題,其最廣泛的應(yīng)用是車輛路徑調(diào)度問題(VRP 問題),目前已提出了許多求解的算法,大致可分為精確算法和啟發(fā)式算法兩大類。VRP 問題目前較難避免求解過程中計算量會隨問題規(guī)模的增大呈指數(shù)增長的問題[6-8],因此只適用于小規(guī)模的VRP 問題;而實際的抓藥過程中,抓藥數(shù)量多,限制了精確算法的應(yīng)用。本文應(yīng)用了啟發(fā)式算法中的差分進化算法,該算法具有待定參數(shù)少、較強的群體收縮和協(xié)同收索能力[9-11],通過Matlab仿真驗證了該算法可以實現(xiàn)預(yù)定的功能,在機器人最優(yōu)軌跡規(guī)劃中具有很強的實用性和實時性。
圖5 所示為抓藥機械手動作過程,機械手包括水平雙桿氣缸、豎直雙桿氣缸和真空吸嘴組成。水平氣缸用于機械手的伸出與縮回,豎直氣缸用于機械手的上升與下降,吸盤用于中藥配方顆粒袋的吸取與釋放。抓取流程如下:首先,真空發(fā)生器啟動,抓藥機械手水平氣缸伸出,當(dāng)氣嘴接觸到顆粒袋時且真空壓力達到設(shè)定值后豎直氣缸伸出,在儲藥盒中的顆粒袋被提起,接著水平氣缸縮回,豎直氣缸縮回,真空發(fā)生器停止工作,失去吸力的顆粒袋在重力的作用下掉落,完成一次抓藥和放藥過程。
圖5 抓藥機械手動作過程
分藥裝袋機構(gòu)是實現(xiàn)發(fā)藥機全自動發(fā)藥的關(guān)鍵機構(gòu),由于中藥發(fā)藥的特點(同一處方,多副藥劑,每副藥劑藥品種類相同),而抓藥機械手只能1次抓取1 袋,因此需要對掉落的顆粒袋進行分類。本團隊采用5 個分藥盒逐個接取顆粒袋,每次接收成功自動移動1 個分藥盒,模擬人工分藥動作。圖6 所示為分藥裝袋機構(gòu)控制策略流程,當(dāng)抓藥機械手掉落的藥袋從出藥口滑出并掉落到1 個分藥盒后,觸發(fā)光電傳感器,分藥盒向右移1 位,移動4 次后開始向左移,以此類推,待所有藥劑收集好后,機器人整體提升裝袋。
圖6 分藥裝袋控制策略流程圖
根據(jù)發(fā)藥機的實際需求,采用“觸摸屏+組態(tài)軟件”組合,開發(fā)了上位機監(jiān)控系統(tǒng)。
觸摸屏監(jiān)控程序由主菜單、調(diào)試菜單、參數(shù)調(diào)整、取藥界面等界面組成,每幅界面可將相應(yīng)的命令、數(shù)據(jù)輸送給PLC,也從PLC 讀出相應(yīng)參數(shù)或狀態(tài)信息,以此實現(xiàn)人機交互。整體程序主要實現(xiàn)機械手位置和速度設(shè)定、藥品選擇、整機調(diào)試和工作狀態(tài)顯示等功能。該系統(tǒng)監(jiān)控畫面簡單、實時、直觀顯示裝置狀態(tài)參數(shù)和重要的系統(tǒng)信息,便于調(diào)試人員直接操控PLC 控制器,也利于醫(yī)院藥房和藥店的藥師直接選擇藥劑進行發(fā)藥。監(jiān)控主要界面如圖7所示。
圖7 主要監(jiān)控界面
藥品管理界面如圖8 所示,該界面在組態(tài)王6.55 版編程環(huán)境下編制,主要通過接口程序與醫(yī)院管理信息系統(tǒng)(HIS)連接,并進行藥品的管理(分析藥品的名稱、數(shù)量、路徑等信息)和發(fā)藥機動作過程監(jiān)控。
圖8 藥品管理界面
系統(tǒng)的工作過程是:首先通過醫(yī)院內(nèi)部局域網(wǎng)將在終端電腦上開出的處方傳至藥品管理系統(tǒng)計算機;然后由主控計算機在查詢藥品數(shù)據(jù)庫的基礎(chǔ)上形成配藥清單并下達指令給抓藥機,在患者完成付款的前提下開始自動抓藥;同時發(fā)藥系統(tǒng)顯示患者信息,并驅(qū)動打印機輸出處方的綜合信息,由醫(yī)務(wù)人員將處方綜合信息連同抓藥機配好的藥品一起交付給患者使用。
本文針對各大醫(yī)院普遍使用的中藥配方顆粒袋,依托PLC、觸摸屏和組態(tài)軟件等通用平臺,開發(fā)了中藥機全自動發(fā)藥控制系統(tǒng)。通過對抓藥路徑和抓藥機械手的作業(yè)流程優(yōu)化,實現(xiàn)了發(fā)藥機穩(wěn)定、高效地工作,該設(shè)計方案具有較強的可行性,研究結(jié)果有助于提高中藥配方顆粒袋的發(fā)藥效率,也可為中藥房自動化改造提供參考。