天天看點

案例分享丨紅外自動感應門設計與實作詳解

摘要:一文為你詳解紅外自動感應門設計原理與實作方案。

主要内容

  • 項目場景說明
  • 人體紅外傳感器介紹
  • 項目實作

一、項目場景

感應探測器探測到有人進入時,感應探測器将收集信号,生成脈沖信号,其後脈沖信号傳給主要器,主要器判斷後通知馬達運作,同時監控馬達轉數,以便通知馬達在一定時候加力和進入慢行運作。馬達得到一定運作電流後做正向運作,将動力傳給同步帶,再由同步帶将動力傳給吊具系統使門扇開啟;門扇開啟後由控制器作出判斷,如需關門,通知馬達作反向運動,關閉門扇。

案例分享丨紅外自動感應門設計與實作詳解

二、任務目标

自動門窗生産企業要設計一款自動感應門,要求使用SMT32處理器采集AS312紅外熱釋電傳感器的信号,使得感應探測器探測到有人進入時,實作自動開啟及關閉。

三、人體紅外傳感器介紹

  • 紅外線傳感器是利用紅外線的實體性質來進行測量的傳感器。
  • 紅外線又稱紅外光,它具有反射、折射、散射、幹涉、吸收等性質。任何物質,隻要它本身具有一定的溫度(高于絕對零度),都能輻射紅外線。
  • 紅外線傳感器測量時不與被測物體直接接觸,因而不存在摩擦,并且有靈敏度高,反應快等優點。
  • 人體紅外傳感器檢測到有人體活動時, 其輸出的I/O值發生變化。當傳感器子產品檢測到有人入侵時,會傳回一個高電平信号,無人入侵時,傳回一個低電平信号,通過讀取I/O口的狀态判斷是否有人體活動。
  • AS312系列産品是将數字智能控制電路與人體探測敏感元都內建在電磁屏蔽罩内的熱釋電紅外傳感器。
  • 人體探測敏感元将感應到的人體移動信号通過甚高阻抗差分輸入電路耦合到數字智能內建電路晶片上,數字智能內建電路将信号轉化成15位ADC數字信号,當PIR信号 超過標明的數字閥值時就會有LED動态輸出以及具有定時時間的REL電平輸出。
案例分享丨紅外自動感應門設計與實作詳解

四、項目分析

本項目設計硬體結構主要由STM32處理器、人體紅外傳感器,序列槽和LCD螢幕組成。

案例分享丨紅外自動感應門設計與實作詳解

五、項目程式邏輯框圖

案例分享丨紅外自動感應門設計與實作詳解

六、項目實作

人體紅外傳感器初始化

void infrared_init(void)
{
    GPIO_InitTypeDef GPIO_InitStructure;                  //定義一個GPIO_InitTypeDef類型的結構體
    RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB, ENABLE); //開啟人體紅外相關的GPIO外設時鐘
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8;             //選擇要控制的GPIO引腳
    GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;        //設定引腳的輸出類型為推挽
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;          //設定引腳模式為輸入模式
    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_DOWN;        //設定引腳為下拉模式
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;      //設定引腳速率為2MHz
    GPIO_Init(GPIOB, &GPIO_InitStructure);                //初始化GPIO配置
}
擷取人體紅外傳感器狀态
unsigned char get_infrared_status(void)
{
    if (GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_8)) //判斷人體紅外引腳狀态
        return 1;
    else
        return 0;
}      

七、項目思考

人體紅外傳感器在檢測中的注意事項?

如何将LiteOS作業系統移植進項目?

項目如何對接華為雲平台?

點選關注,第一時間了解華為雲新鮮技術~

繼續閱讀