資料介紹
描述
介紹
在地鐵系統(tǒng)中,有一個設(shè)備可以控制用戶進(jìn)出通道,反之亦然。在這些設(shè)備中,有一個傳感器可以檢測旋轉(zhuǎn)柵門用戶的接近程度。
當(dāng)用戶靠近閘機時,需要他通過您的卡才能進(jìn)入地鐵系統(tǒng)。
但是在這些系統(tǒng)中,很多時候用戶并不知道存在一個傳感器,當(dāng)用戶靠近旋轉(zhuǎn)門時允許訪問。
因此,在本文中,您將學(xué)習(xí)如何實現(xiàn)人機界面,以更好地與地鐵用戶交互信息。
該項目的開發(fā)得益于PCBWay 公司為我們的項目生產(chǎn)印刷電路板的支持。
項目的發(fā)展
要開發(fā)此項目,請參見圖 1,您將了解電路是如何開發(fā)的。可以看出,電路非常簡單。連接在數(shù)字管腳 8 中的按鈕用于模擬機器中的傳感器,連接在數(shù)字管腳 9 中的另一個按鈕用于模擬卡的通過過程。

#include
LiquidCrystal lcd(2,3,4,5,6,7); //LiqyuidCrystal lcd(RS, EN, DB4, DB5, DB6, DB7)
#define PinoSensor 9
#define PinoCartao 8
bool sensor = 0, cartao = 0, controle = 0, EstadoSensor = 0, EstadoCartao = 0;
void setup()
{
for(byte pinos = 2; pinos < 8; pinos++)//Configuracao dos pinos do LCD como saida
{
pinMode(pinos, OUTPUT);
}
lcd.begin(16,2); //Inicializa o display de LCD 16 x 2
lcd.clear();//Limpa a tela do LCD
}
void loop()
{
// put your main code here, to run repeatedly:
sensor = digitalRead(PinoSensor);
cartao = digitalRead(PinoCartao);
delay(50);
if((sensor != EstadoSensor)||(cartao != EstadoCartao))
{
controle = 0;
}
if(sensor == 0 && cartao == 0 && controle == 0)
{
lcd.clear();
lcd.setCursor(1,0);
lcd.print("Metro-Silicios");
lcd.setCursor(6,1);
controle = 1;
}
if(sensor == 1 && cartao == 0 && controle == 0)
{
lcd.clear();
lcd.setCursor(2,0);
lcd.print("Insira o seu");
lcd.setCursor(4,1);
lcd.print("Cartao!");
controle = 1;
}
if(sensor == 0 && cartao == 1 && controle == 0)
{
lcd.clear();
lcd.setCursor(1,0);
lcd.print("Aproxime-se da");
lcd.setCursor(4,1);
lcd.print("Catraca");
controle = 1;
}
if(sensor == 1 && cartao == 1 && controle == 0)
{
lcd.clear();
lcd.setCursor(5,0);
lcd.print("Catraca");
lcd.setCursor(4,1);
lcd.print("Liberada");
controle = 1;
}
EstadoSensor = sensor;
EstadoCartao = cartao;
}
在代碼的開頭,代表用戶的接近傳感器和檢測卡通過的傳感器的兩個按鈕的狀態(tài)被讀取,如下面的代碼所示。
sensor = digitalRead(PinoSensor);
cartao = digitalRead(PinoCartao);
delay(50);
“delay(50)”用于通過代碼去抖動。在此之后,我們有一個條件來驗證傳感器或卡的狀態(tài)是否發(fā)生變化。為此,條件將使用卡和傳感器的先前狀態(tài)。
如果傳感器的實際狀態(tài)或卡的實際狀態(tài)與之前的狀態(tài)不同,則變量“控制”它將為零。
這個使用變量狀態(tài)“Controle”的概念用于允許流代碼在每個條件下僅輸入一次,以在LCD 16 x 2上顯示消息。
下面,您可以看到顯示命令的代碼部分。
if((sensor != EstadoSensor)||(cartao != EstadoCartao))
{
controle = 0;
}
將檢測到卡或傳感器狀態(tài)的任何變化,并更改“控制”變量的值。
為方便起見,我們使用16 x 2 LCD來改善用戶與系統(tǒng)之間的通信。這將使用戶更容易使用機器。
為了改善溝通,我們創(chuàng)建了用戶在接近和使用棘輪時可能發(fā)生的 4 個條件。這4個條件是:
- LCD 上的信息未被使用;
當(dāng)條件發(fā)生時,命令塊由系統(tǒng)執(zhí)行。
if(sensor == 0 && cartao == 0 && controle == 0)
{
lcd.clear();
lcd.setCursor(1,0);
lcd.print("Metro-Silicios");
lcd.setCursor(6,1);
controle = 1;
}
并且“Subway - Silicios”信息將顯示在LCD 16 x 2上。
- 當(dāng)用戶接近閘機但未通過卡時,液晶顯示屏上的消息;
當(dāng)條件發(fā)生時,命令塊被執(zhí)行。
if(sensor == 1 && cartao == 0 && controle == 0)
{
lcd.clear();
lcd.setCursor(2,0);
lcd.print("Insira o seu");
lcd.setCursor(4,1);
lcd.print("Cartao!");
controle = 1;
}
- 用戶通過卡但未靠近閘機時液晶顯示屏上的信息;
當(dāng)條件發(fā)生時,將執(zhí)行下面的命令塊。
if(sensor == 0 && cartao == 1 && controle == 0)
{
lcd.clear();
lcd.setCursor(1,0);
lcd.print("Aproxime-se da");
lcd.setCursor(4,1);
lcd.print("Catraca");
controle = 1;
}
- 當(dāng)用戶通過卡片并靠近旋轉(zhuǎn)柵門時,液晶顯示屏上會顯示消息。
當(dāng)條件發(fā)生時,將執(zhí)行下面的命令塊。
if(sensor == 1 && cartao == 1 && controle == 0)
{
lcd.clear();
lcd.setCursor(5,0);
lcd.print("Catraca");
lcd.setCursor(4,1);
lcd.print("Liberada");
controle = 1;
}
致謝
感謝PCBWay支持我們的 YouTube 頻道并生產(chǎn)和組裝質(zhì)量更好的 PCB。
- Arduino人機界面及接口技術(shù)入門 0次下載
- 串口人機界面和普通顯示屏的區(qū)別及優(yōu)勢 5次下載
- MSP430飛機空調(diào)車人機界面的設(shè)計與研究 5次下載
- 人機界面的基礎(chǔ)指南 1次下載
- 基于NA系列的人機界面操作手冊 0次下載
- 基于INO TOUCH的人機界面操作指南 1次下載
- led照明提高人機界面質(zhì)量 8次下載
- 使用STM32設(shè)計人機界面 (HMI) 0次下載
- 基于STM32的便攜式人機界面系統(tǒng) 20次下載
- 人機界面在低壓斷路器智能測控系統(tǒng)中的應(yīng)用
- MP系列人機界面操作手冊
- 人機界面的開發(fā)與應(yīng)用
- 交換機人機界面代碼自動生成軟件的設(shè)計
- 發(fā)電企業(yè)DCS 系統(tǒng)人機界面設(shè)計原則研究
- 基于VxWorks的無線接收器的人機界面設(shè)計與實現(xiàn)
- 人機界面與組態(tài)軟件的區(qū)別 1042次閱讀
- 人機界面與工控機的區(qū)別 1604次閱讀
- 如何編寫人機界面 1050次閱讀
- 人機界面報警信息的設(shè)置方法 9023次閱讀
- 基于Android操作系統(tǒng)實現(xiàn)車載人機界面應(yīng)用程序的設(shè)計 2895次閱讀
- 人機界面未來的發(fā)展趨勢 3618次閱讀
- 常見的人機界面和PLC通訊故障,及解決方案介紹 1w次閱讀
- 人機界面簡單編程實例介紹 2.3w次閱讀
- 人機界面HMI的8大知識點匯總 5.8w次閱讀
- 人機界面設(shè)計案例分析 3.2w次閱讀
- 詳細(xì)介紹人機界面的10大常識 8005次閱讀
- 人機界面的發(fā)展歷程和組成結(jié)構(gòu)及工作原理,人機界面如何控制plc? 7159次閱讀
- 人機界面設(shè)計在工業(yè)設(shè)計中的應(yīng)用 2540次閱讀
- 人機界面技術(shù)大盤點 1901次閱讀
- 基于Android車載虛擬儀表人機界面設(shè)計 1840次閱讀
下載排行
本周
- 1人工智能+消費:技術(shù)賦能與芯片驅(qū)動未來
- 15.25 MB | 4次下載 | 免費
- 2?業(yè)電源&模塊電源產(chǎn)品?冊
- 15.40 MB | 1次下載 | 免費
- 379M15 TO-252三端穩(wěn)壓IC規(guī)格書
- 0.86 MB | 次下載 | 免費
- 4MBRD20150CT TO-252肖特基二極管規(guī)格書
- 0.54 MB | 次下載 | 免費
- 5自動鎖螺絲運動控制系統(tǒng)用戶手冊
- 6.65 MB | 次下載 | 5 積分
- 6奧特光耦產(chǎn)品手冊
- 4.83 MB | 次下載 | 免費
- 7SMA系列10MHz~40GHz同軸檢波器
- 559.60 KB | 次下載 | 免費
- 8CD7388CZ:7W×4 四通道音頻功率放大電路技術(shù)手冊
- 0.39 MB | 次下載 | 10 積分
本月
- 1元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 241次下載 | 免費
- 2元宇宙底層硬件系列報告
- 13.42 MB | 184次下載 | 免費
- 32022 年展望報告 – 半導(dǎo)體產(chǎn)業(yè)
- 1.43 MB | 136次下載 | 免費
- 4晶振與濾波器應(yīng)用電路《電子工程師必備:元器件應(yīng)用寶典》
- 1.57 MB | 90次下載 | 免費
- 5汽車電子行業(yè)深度解析:智能化與電動化方興未艾
- 6.47 MB | 71次下載 | 免費
- 6中國DPU行業(yè)白皮書
- 23.80 MB | 37次下載 | 免費
- 7晶科鑫代理線-微盟電子2021年度產(chǎn)品目錄選型手冊
- 14.75 MB | 27次下載 | 免費
- 8SJK晶振產(chǎn)品目錄-簡化版-2022
- 13.77 MB | 20次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935134次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191425次下載 | 10 積分
- 5十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183352次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App






創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評論