仿真儀表應該具有真實儀表的一些特征。一是顯示要正確,不能出錯,錯誤的顯示會引起人(或機器人)錯誤的操作,這對化工系統來說,后果是不堪設想的:二是反應要迅速,能及時傳達信息,冗長的程序代碼和明顯滯后的顯示,是不可能使操作達到穩定和優化的是顯示要清晰,便于讀數,不受屏幕大小的影響,這對機器人來說無關緊要,而對我們自然人來說則是極為重要的,模糊的顯示相當于錯誤的顯示:四是界面要友好、生動,簡單的文字塊顯示會使操作者感到枯燥無味、影響注意力和瞬間判斷效果,而雜亂的圖形顯示則會使人眼花潦亂,使用VISUALBASIC5.0或6.0編程,在這些方面都能獲得滿意的結果。信號來源化工儀表種類繁多,其結構與運行原理也千變萬化,有直接與操作系統接觸的一次儀表,也有將一次儀表所獲效果進行傳遞、轉換為其它信號的二次儀表,不論用計算機仿真何種儀表,計算機只能接受變化的電訊號和傳出相應的電訊號,也就是說,只能仿真儀表的運行與顯示,而不可能替代檢測和轉換訊號的真實儀表。
本文介紹以VB進行化工儀表仿真的原理與方法,為了減少篇幅,實例中摘錄的代碼是完整代碼的核心部分。在沒有主體設備向儀表提供控制訊號時,為了測試各種仿真儀表的實用效果,可首先設置以下信號發生器代碼,以產生一個隨時間改變的參數X表盤類本實例運用于各種表盤類儀表的制作,包括壓力表、真空表、電流表、鐘表等。制作時將整個表頭安置在一個單獨的圖形框PictureBox內顯示,一方面可以使用c1s語句,清除整個畫面后進行重畫,使制作過程簡化;另一方面由于整個屏幕內工藝設備多,表頭必然很小,需要進行放大后讀數,單個的圖形框亦利于隱藏和放大。管柱類本實例適用于各種管柱類儀表的制作,包括U管壓差計、水銀氣壓計、連通管液面計等。制作時考慮儀表與主管道連接緊密,往往將儀表與管路畫在一起。當指示改變時,我們不希望將儀表連同主體設備一同清除后重畫,這時采用部分清除的方法,下面以U管壓差計為例,其代碼為:改變X0,Y0,H,R,d可以象改變一個零件一樣改變U管的位置與尺寸大小。注意,當超出U管顯示范圍時,必須另加代碼以顯示事故狀態。
旋轉類儀表的部件在顯示時不僅發生某些位移,而且產生旋轉,典型的例子是轉子流量計。以下代碼顯示了當流量改變時,浮子不僅發生對應的上、下位移,而且不停地旋轉。記錄儀表帶記錄紙的記錄儀,普遍使用在現場操作中,廣泛用于二次儀表,顯示反應器內的溫度、壓力及反應物組成。色譜儀等分析儀器也采用記錄儀來顯示分析結果。以下代碼顯示不斷移動的記錄紙及筆尖隨輸入參數變化畫出來的峰狀曲線。其中Picture1作為一個窗口,Picture1中的Picture2是帶有坐標線的移動著的記錄紙。