0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

智慧路燈模塊硬件和軟件電路設(shè)計(jì)

電子發(fā)燒友開源社區(qū) ? 來源:HarmonyOS官方合作社區(qū) ? 作者:HarmonyOS官方合作社 ? 2022-04-28 08:58 ? 次閱讀

一、智慧路燈簡(jiǎn)介

我們平時(shí)看到的傳統(tǒng)路燈基本是通過定時(shí)開啟、定時(shí)關(guān)閉來控制路燈亮滅,在夏天白晝時(shí)間長(zhǎng),路燈過早開啟,造成能源浪費(fèi);在冬天白晝時(shí)間短,往往經(jīng)常是天已經(jīng)黑了,路燈卻未開啟,給人們的出行帶來了諸多不便;也有的路燈通過專人手動(dòng)開啟關(guān)閉,這種方式雖較定時(shí)方式靈活,但也存在需要人為操作的局限性。隨著社會(huì)的發(fā)展進(jìn)步,智慧路燈應(yīng)運(yùn)而生,智慧路燈通過自身攜帶的光線傳感器,通過傳感器采集的的光線數(shù)據(jù)判斷天黑情況,可以根據(jù)預(yù)置的閾值來實(shí)現(xiàn)路燈開啟關(guān)閉;同時(shí)智慧路燈的光線數(shù)據(jù)也可以同步上傳云端,通過云端可以查詢到智慧路燈的光線數(shù)據(jù)、路燈開啟關(guān)閉狀態(tài),同時(shí)也可以設(shè)置智慧路燈開啟關(guān)閉的閾值,實(shí)現(xiàn)云管理。

本文基于OpenHarmony系統(tǒng),使用小凌派RK2206開發(fā)板搭載智慧路燈模塊,模擬實(shí)現(xiàn)智慧路燈應(yīng)用,智慧路燈模塊本身自帶光線傳感器,通過傳感器采集的光線數(shù)據(jù)判斷天黑情況,根據(jù)預(yù)設(shè)的閾值來實(shí)現(xiàn)路燈的開關(guān);搭載OpenHarmony系統(tǒng)的小凌派RK2206開發(fā)板支持連接華為云服務(wù)器,后續(xù)文章將更新智慧路燈在華為云的應(yīng)用實(shí)現(xiàn)。

二、硬件電路設(shè)計(jì)

智慧路燈模塊硬件電路如圖1所示,電路中包含了E53接口連接器、EEPROM存儲(chǔ)器、光線傳感器BH1750、大功率LED驅(qū)動(dòng)電路。本文主要使用光線傳感器BH1750和LED燈驅(qū)動(dòng)電路,其中光線傳感器為數(shù)字接口芯片,使用I2C總線控制;LED燈驅(qū)動(dòng)電路通過PWD_LED口控制LED燈開啟、關(guān)閉,PWD_LED輸出高電平點(diǎn)亮LED燈,PWD_LED輸出低電平熄滅LED燈。模塊硬件電路簡(jiǎn)單,這里就不對(duì)此進(jìn)行多余的說明。

3235a07a-c68c-11ec-bce3-dac502259ad0.png

圖1 智慧路燈模塊硬件電路圖

小凌派RK2206開發(fā)板與智慧路燈模塊均帶有防呆設(shè)計(jì),能夠很容易區(qū)分安裝方向,直接將模塊插入到小凌派RK2206開發(fā)板的E53母座接口上即可,安裝如圖2所示。

3259bcf8-c68c-11ec-bce3-dac502259ad0.png

圖2 硬件連接圖

三、軟件設(shè)計(jì)

1、主程序設(shè)計(jì)

小凌派RK2206開發(fā)板上電后,OpenHarmony系統(tǒng)開始運(yùn)行,LiteOS系統(tǒng)初始化后,創(chuàng)建一個(gè)線程用于實(shí)現(xiàn)智慧路燈主程序。進(jìn)入主程序先初始化智慧路燈模塊,程序進(jìn)入主循環(huán),2秒獲取一次光線傳感器BH1750的光線強(qiáng)度值,當(dāng)光線強(qiáng)度值小于20時(shí),打開LED路燈;當(dāng)光線強(qiáng)度值大于20時(shí),關(guān)閉LED路燈。

  void e53_isl_thread(){    float lum = 0;
    e53_isl_init();
    while (1)    {      lum = e53_isl_read_data();
      printf("luminance value is %.2f
", lum);
      if (lum < 20)      {        isl_light_set_status(ON);        printf("light on
");      }      else      {        isl_light_set_status(OFF);        printf("light off
");      }
      LOS_Msleep(2000);    }

(左右移動(dòng)查看全部?jī)?nèi)容)

2、智慧路燈初始化程序設(shè)計(jì)

智慧路燈初始化程序主要分為硬件IO初始化和BH1750傳感器的初始化兩部分。

{  e53_isl_io_init();  init_bh1750();}

(左右移動(dòng)查看全部?jī)?nèi)容)

硬件IO初始化程序主要配置GPIO0_PA5為輸出模式,作為L(zhǎng)ED燈控制IO;初始化I2C0用于讀寫B(tài)H1750傳感器,配置I2C時(shí)鐘頻率400K。

{  LzGpioInit(GPIO0_PA5);  LzGpioSetDir(GPIO0_PA5, LZGPIO_DIR_OUT);  if (I2cIoInit(m_isl_i2c0m2) != LZ_HARDWARE_SUCCESS)  {    printf("init I2C I2C0 io failed
");  }  if (LzI2cInit(ISL_I2C0, 400000) != LZ_HARDWARE_SUCCESS)  {    printf("init I2C I2C0 failed
");  }}

(左右移動(dòng)查看全部?jī)?nèi)容)

BH1750傳感器初始化程序通過I2C0向BH1750傳感器寫入通電命令0x1,開始等待測(cè)量命令,如圖3為BH1750傳感器的命令集。

327e126a-c68c-11ec-bce3-dac502259ad0.png

圖3 BH1750指令

{  uint8_t send_data[1] = {0x01};  uint32_t send_len = 1;
  LzI2cWrite(ISL_I2C0, BH1750_ADDR, send_data, send_len);}

(左右移動(dòng)查看全部?jī)?nèi)容)

3、獲取傳感器數(shù)據(jù)程序設(shè)計(jì)

獲取傳感器數(shù)據(jù)程序通過I2C下發(fā)命令開始測(cè)量,延時(shí)一定時(shí)間后,開始讀取BH1750傳感器的寄存器值,讀取兩個(gè)字節(jié)數(shù)據(jù),其中第一個(gè)字節(jié)數(shù)據(jù)為高8位,第二字節(jié)數(shù)據(jù)為低8位數(shù)據(jù),亮度值為高8位和低8位數(shù)據(jù)合并為16字節(jié)數(shù)據(jù)除以1.2。

{  float lum = 0;    start_bh1750();  LOS_Msleep(180);
  uint8_t recv_data[2] = {0};  uint32_t receive_len = 2;  LzI2cRead(ISL_I2C0, BH1750_ADDR, recv_data, receive_len);  lum = (float)(((recv_data[0]<<8) + recv_data[1])/1.2);    return lum;}

(左右移動(dòng)查看全部?jī)?nèi)容)

程序通過I2C0向BH1750傳感器寫入連續(xù)H分辨率模式命令0x10,開始測(cè)量命令,測(cè)量時(shí)間一般為120ms。

{  uint8_t send_data[1] = {0x10};  uint32_t send_len = 1;
  LzI2cWrite(ISL_I2C0, BH1750_ADDR, send_data, send_len);}

(左右移動(dòng)查看全部?jī)?nèi)容)

四、測(cè)試結(jié)果

程序編譯燒寫到小凌派RK2206開發(fā)板后,按下開發(fā)板的RESET按鍵,通過串口軟件查看日志如下所示;通過遮擋智慧路燈模塊上的光線傳感器,從而來改變光線強(qiáng)度值,當(dāng)光線強(qiáng)度值小于20時(shí),LED燈打開;當(dāng)光線強(qiáng)度值大于20時(shí),LED燈關(guān)閉。

luminance value is 45.83light offluminance value is 4.17light on

(左右移動(dòng)查看全部?jī)?nèi)容)

原文標(biāo)題:基于 OpenHarmony 的智慧路燈實(shí)現(xiàn)

文章出處:【微信公眾號(hào):HarmonyOS官方合作社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 電路設(shè)計(jì)
    +關(guān)注

    關(guān)注

    6659

    文章

    2420

    瀏覽量

    202814
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    4896

    瀏覽量

    97058
  • 智慧路燈
    +關(guān)注

    關(guān)注

    2

    文章

    735

    瀏覽量

    17037
  • OpenHarmony
    +關(guān)注

    關(guān)注

    25

    文章

    3635

    瀏覽量

    16061

原文標(biāo)題:基于 OpenHarmony 的智慧路燈實(shí)現(xiàn)

文章出處:【微信號(hào):HarmonyOS_Community,微信公眾號(hào):電子發(fā)燒友開源社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    硬件工程師電路設(shè)計(jì)的九大模塊電路

    硬件電路設(shè)計(jì)總結(jié)主要包括以下幾個(gè)主要的模塊:電源模塊,存儲(chǔ)模塊,顯示模塊,和對(duì)外接口
    發(fā)表于 02-21 14:52 ?1509次閱讀
    <b class='flag-5'>硬件</b>工程師<b class='flag-5'>電路設(shè)計(jì)</b>的九大<b class='flag-5'>模塊</b><b class='flag-5'>電路</b>

    燈光控制模塊硬件電路設(shè)計(jì)

    本帖最后由 gk320830 于 2015-3-5 13:46 編輯 求一個(gè)“燈光控制模塊硬件電路設(shè)計(jì)電路圖,使用18F25K80,控制八
    發(fā)表于 05-10 17:01

    基于NB-IoT的智慧路燈監(jiān)控系統(tǒng)(NB-IoT專欄—實(shí)戰(zhàn)篇2:硬件開發(fā))精選資料分享

    目錄1、設(shè)備選型1.1、主控制器1.2、NB-IoT無(wú)線通信模塊和GPS模塊1.3、光照檢測(cè)模塊1.4、輸出控制模塊1.5、電能檢測(cè)模塊2、
    發(fā)表于 07-30 07:46

    談?wù)?b class='flag-5'>智慧路燈的定義及其功能

    1、智慧路燈定義智慧路燈?是指在路燈上搭載各種傳感器及感知設(shè)備,如充電樁、LED信息發(fā)布屏、高清攝像頭、應(yīng)急報(bào)警、5G基站搭載網(wǎng)絡(luò)、無(wú)線WI
    發(fā)表于 09-15 09:08

    基于OpenHarmony的智慧路燈實(shí)現(xiàn)

    的開關(guān);搭載OpenHarmony系統(tǒng)的小凌派RK2206開發(fā)板支持連接華為云服務(wù)器,后續(xù)文章將更新智慧路燈在華為云的應(yīng)用實(shí)現(xiàn)。二、硬件電路設(shè)計(jì)智慧
    發(fā)表于 04-22 13:43

    基于OpenHarmony的華為云IoT智慧路燈實(shí)現(xiàn)

    光線數(shù)據(jù)上傳到華為云平臺(tái),實(shí)現(xiàn)華為云平臺(tái)管理智慧路燈。二、硬件電路設(shè)計(jì)智慧路燈
    發(fā)表于 05-10 09:36

    基于OpenHarmony的華為云IoT智慧路燈

    光線數(shù)據(jù)上傳到華為云平臺(tái),實(shí)現(xiàn)華為云平臺(tái)管理智慧路燈。二、硬件電路設(shè)計(jì)智慧路燈
    發(fā)表于 05-11 10:06

    求一種基于RK2206開發(fā)板的智慧路燈設(shè)計(jì)案例

    硬件資源EEPROM 24C02的設(shè)備地址為:0x1010001* ;硬件接口說明引腳名稱開發(fā)者可在硬件資源圖中查看,也可在智慧路燈
    發(fā)表于 08-16 16:38

    太陽(yáng)能LED路燈硬件電路設(shè)計(jì)

    面板的設(shè)計(jì)、太陽(yáng)能電池與蓄電池的選擇,同時(shí)詳細(xì)分析和討論了路燈各部分的電路設(shè)計(jì)及工作原理,并應(yīng)用Protues和keil軟件對(duì)LED路燈的充電電路
    發(fā)表于 10-25 10:25 ?57次下載
    太陽(yáng)能LED<b class='flag-5'>路燈</b><b class='flag-5'>硬件</b><b class='flag-5'>電路設(shè)計(jì)</b>

    太陽(yáng)能路燈電路設(shè)計(jì)與仿真

    太陽(yáng)能LED路燈發(fā)光面板的設(shè)計(jì)、太陽(yáng)能電池與蓄電池的選擇,同時(shí)詳細(xì)分析和討論了路燈各部分的電路設(shè)計(jì)及工作原理,并應(yīng)用Protues和keil軟件對(duì)LED
    發(fā)表于 02-02 14:37 ?1.4w次閱讀
    太陽(yáng)能<b class='flag-5'>路燈</b><b class='flag-5'>電路設(shè)計(jì)</b>與仿真

    WiFi模塊助力智慧路燈的無(wú)線覆蓋和視頻傳輸

    、LED顯示、汽車充電還有環(huán)境監(jiān)測(cè)等。本篇SKYLAB君主要為大家介紹滿足智慧路燈無(wú)線覆蓋和監(jiān)控安防視頻傳輸需求的WiFi模塊。智慧路燈
    的頭像 發(fā)表于 07-11 12:22 ?4254次閱讀

    硬件軟件一起完成的集成電路設(shè)計(jì)

    集成電路設(shè)計(jì)的流程一般先要進(jìn)行軟硬件劃分,將設(shè)計(jì)基本分為兩部分:芯片硬件設(shè)計(jì)和軟件協(xié)同設(shè)計(jì)。
    的頭像 發(fā)表于 09-08 16:37 ?2035次閱讀

    LoRa模塊智慧路燈通信的應(yīng)用

    的基礎(chǔ)部分,它可以融合多種城市功能,是智慧城市的重要載體。具有長(zhǎng)距離傳輸,功耗低,已于搭建各類接口設(shè)備的LoRa模塊技術(shù),可以滿足智慧路燈需要連接各類傳感器采集數(shù)據(jù)的需求。
    的頭像 發(fā)表于 11-01 11:29 ?1006次閱讀

    基于LPC2131的的CAN接口模塊硬件電路設(shè)計(jì)

    電子發(fā)燒友網(wǎng)站提供《基于LPC2131的的CAN接口模塊硬件電路設(shè)計(jì).rar》資料免費(fèi)下載
    發(fā)表于 11-10 10:46 ?0次下載
    基于LPC2131的的CAN接口<b class='flag-5'>模塊</b><b class='flag-5'>硬件</b><b class='flag-5'>電路設(shè)計(jì)</b>

    LED路燈驅(qū)動(dòng)電路設(shè)計(jì)方案

    電子發(fā)燒友網(wǎng)站提供《LED路燈驅(qū)動(dòng)電路設(shè)計(jì)方案.doc》資料免費(fèi)下載
    發(fā)表于 11-14 11:31 ?2次下載
    LED<b class='flag-5'>路燈</b>驅(qū)動(dòng)<b class='flag-5'>電路設(shè)計(jì)</b>方案