電梯控制系統(tǒng)軟件架構(gòu)及預(yù)計(jì)實(shí)現(xiàn)結(jié)果
2017-10-28
電梯控制的軟件框架由電梯的模式作為主體框架,以完成模式下的功能為驅(qū)動(dòng)進(jìn)行設(shè)計(jì),各個(gè)模式的簡(jiǎn)介如下:
故障修理模式:由管理員手動(dòng)切換,在故障模式下工程人員可以實(shí)現(xiàn)對(duì)于電梯的故障檢修
一般運(yùn)行模式:由管理員手動(dòng)切換,一般運(yùn)行模式是電梯的主要模式,完成電梯的主要功能
直接運(yùn)行模式:由用戶切換或者管理員切換,直接運(yùn)行模式下,電梯可以從當(dāng)前層面直接到達(dá)底層。當(dāng)出現(xiàn)火宅或者有病人需要急救時(shí)可以避免電梯在中間層停靠,以此爭(zhēng)取寶貴的時(shí)間
電梯控制系統(tǒng)預(yù)計(jì)實(shí)現(xiàn)結(jié)果
一些頭文件的申明
一些變量的申明
#define repairMode 00
#define generalrunMode 01
#define direcltyrunMode 10
int setModeR_G(int currentMode int premode); //負(fù)責(zé)狀態(tài)之間的切換
int setModeG_R(int currentMode int premode); //mode為兩位變量,由撥碼開(kāi)關(guān)在I/O口讀入
int setModeG_D(int currentMode int premode);
int setModeD_G(int currentMode int premode);
//狀態(tài)切換會(huì)返回置位bool量 modechange
int getmode() //讀取mode的當(dāng)前的值,并且刷新mode和premode
Void lcd_initialize(void) //負(fù)責(zé)顯示屏的初始化
Void port_initalize(void) //負(fù)責(zé)端口的初始化
Void motor_initalize(void) //負(fù)責(zé)電機(jī)的初始化
Void lighting_initalize(void) //負(fù)責(zé)照明的初始化
Void elevatordoor_initalize(void) //負(fù)責(zé)電梯門的初始化
Void lcd_display(int temperature); //負(fù)責(zé)溫度的顯示
Void eledoor_allopen(); //電梯門在檢修模式下常開(kāi)
Void eledoor(); //電梯門在其他兩個(gè)模式下的運(yùn)行方式
Void motor_stop();
int motor_genrun();
int motor_dirrun(); //返回一個(gè)Int值dooropen為1,控制電梯門的開(kāi)啟
//電梯在三種模式下的運(yùn)行方式
Void light_display(int pressure); //電燈的開(kāi)關(guān)控制
Void communicate(); //通信方法
Void repair() //檢修模式下的工作方式
{
While(modechange==0)
{
Communicate();
Eledoor_allopen();
Light_display();
Lcd_display(int temperature);
Int getmode();
If(premode==01&&mode==00)
setModeG_R();
}
}
Void generalrun() //一般運(yùn)行模式下的工作方式
{
While(modechange==0)
{
Communicate();
Light_display();
Lcd_display(int temperature);
If(premode==01&&mode==00)
setModeG_R();
If(premode==01&&mode==10)
setModeG_D();
}
}
Void directlyrun() //直接運(yùn)行下的工作方式
{
While(modechange==0)
{
Communicate();
Light_display();
Lcd_display(int temperature);
Int getmode();
If(premode==10&&mode==01)
setModeD_G();
}
}
Void initialize(void) //負(fù)責(zé)總體的初始化
{
currentMode=generalrunMode;
Lcd_initialize();
Port_initialize();
motor_initalize();
lighting_initalize();
elevatordoor_initalize();
}
Int main()
{
Initialize();
While(1)
{
Switch(currentMode)
{
Case repairMode;
Repair();
Break;
Case generalrunMode;
Generalrun();
Break;
Case directltyrunMode;
Directltyrun();
Break;
}
}
}
以上就是小編今日為大家?guī)?lái)的全部?jī)?nèi)容咨詢,更多電梯控制系統(tǒng)信息訪問(wèn)多奧科技官網(wǎng):www.goodzheng.com








