【正文】
靠性,可以采用多次檢測的方法,即對一個信號連續(xù)進行多次采樣,以保證信號的可信度。在實際應用中需包含此功能模塊。 信號存儲模塊電梯控制器的輸入請求信號有10個(電梯外有 3個上升請求和3個下降請求的用戶輸入端口,電梯內(nèi)有4個用戶請求輸入端口),由于系統(tǒng)對內(nèi)、外請求沒有設置優(yōu)先級,各樓層的內(nèi)、外請求信號被采集后可先進行運算,再存到存儲器內(nèi),但對請求信號的響應有一定的優(yōu)先級,即:當電梯處于上升模式時, 只響應比電梯所在的位置高的上樓請求信號, 由下而上逐個執(zhí)行, 直到最后一個上樓請求執(zhí)行完畢;如果高層有下樓請求則直接升到有下樓請求的最高樓層, 然后進入下降模式。電梯運行過程中,由于用戶請求信號的輸入是離散的,而且系統(tǒng)對請求的響應也是離散的,因此,請求信號的存儲要保證新的請求信號不能覆蓋原來的請求信號,只有當響應動作完成后才能清除存儲器內(nèi)對應的請求信號位。 RAM的對應位與與外部某層請求信號內(nèi)部某層請求信號響應信號(CLR)圖3 請求信號操作電路圖 顯示模塊系統(tǒng)的顯示輸出包括樓層顯示及關(guān)門延時顯示(若需要,還可以增加請求信號顯示和電梯運動方向指示)。仿真結(jié)果該電梯控制器使用VHDL語言設計,用Atera公司Cyclone系列中的EP1C3T144C8芯片實現(xiàn),在 Quartus II (32Bit)環(huán)境下通過編譯和仿真,并下載到實驗箱上進行了驗證,其中部分仿真結(jié)果如圖4和圖5所示。三樓乘客要上四樓超載一樓乘客要上三樓 關(guān)門倒計時器值樓層指示 圖4 仿真圖(0~400ns)緊急制動圖5 續(xù)圖4(400ns~)結(jié) 語本文設計的基于FPGA的電梯控制器能夠很好的控制電梯完成四層樓的載客服務,其硬件電路簡單,可靠性高。參考文獻略附 錄 :源程序文件名:。最后修改日期:。use 。use 。 時鐘信號(頻率為1Hz) o_u1,o_u2,o_u3: in std_logic。 電梯外乘客的下降請求信號 in1,in2,in3,in4 : in std_logic。 電梯所在樓層顯示 led_c : out integer range 0 to 15。 end dianti。 開門使能信號signal updown:std_logic。 預備上升、預備下降預操作使能信號type state is(g1,g2,g3,g4)。signal en : std_logic 。0 進行動作上升,下降,開關(guān)門beginprocess(clk,en,stop,overload)variable in1_r,in2_r,in3_r,in4_r:std_logic。 電梯外乘客上升請求信號寄存信號variable o_d2_r,o_d3_r,o_d4_r:std_logic。 電梯內(nèi)外請求信號寄存器beginif clk39。139。139。139。039。039。039。039。039。039。039。039。039。139。139。 對電梯內(nèi)乘客請求信號進行檢測和寄存 if in2=39。 then in2_r:=39。end if。139。139。 if in4=39。 then in4_r:=39。end if。139。139。 對電梯外乘客上升請求信號進行檢測和寄存 if o_u2=39。 then o_u2_r:=39。end if。139。139。 if o_d2=39。 then o_d2_r:=39。end if。139。139。 if o_d4=39。 then o_d2_r:=39。end if。 in_all:=in4_ramp。in2_ramp。 電梯內(nèi)乘客請求信號并置 o_u_all:=39。amp。o_u2_ramp。 電梯外乘客上升請求信號并置 o_d_all:=o_d4_ramp。o_d2_ramp。039。 電梯內(nèi)、外乘客請求信號進行綜合 end if。event and clk=39。 and en=39。 and stop=39。and overload=39。then case g is when g1 = led=0001。139。139。039。039。039。039。139。 elsif o_i_all=0000 then