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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

DIY智能暫存柜,助你無接觸取快遞

智能物聯(lián)研習社 ? 來源:智能物聯(lián)研習社 ? 作者:智能物聯(lián)研習社 ? 2021-09-28 16:44 ? 次閱讀

近年來,智能暫存柜在物流、服務行業(yè)大放異彩。例如順豐蜂巢快遞柜、菜鳥驛站智能柜等,不但解決了快遞行業(yè)的最后一公里理念,還能在特殊的時期(例如疫情期間)避免人流聚集。

基于涂鴉IoT開發(fā)平臺,使用涂鴉三明治Wi-FiMCU通信板(WB3S)、涂鴉三明治電源板、STM32開發(fā)板、門鎖驅動、以及其他零部件,借助涂鴉MCUSDK低代碼開發(fā)方式,您可以跟隨本教程快速開發(fā)一個校園智能暫存柜產品原型。

本教程內容均為涂鴉開發(fā)者@何權燊提供,經其授權編輯發(fā)布。

物料清單:

1、涂鴉三明治Wi-FiMCU通信板(WB3S)數(shù)量:1

適用于涂鴉IoT自定義方案中,照明、臺燈、燈絲燈、調光器、照明遙控器、排插、開關、家電、運動健康、傳感類產品原型。

2、涂鴉三明治直流供電電源板數(shù)量:1

用于給涂鴉三明治其余相關的部件供電。

3、STM32開發(fā)板數(shù)量:1

支持評估高成本效益的超低功耗LPWAN遠距離物聯(lián)網連接。

4、門鎖驅動板數(shù)量:1

根據(jù)認證信號或鑰匙動作,決定是否將內側門把手軸和外側門把手軸聯(lián)接。

步驟

第1步:產品框架

智能校園寄存柜管理系統(tǒng)由以下IoT組件組成:智能暫存柜設備:門鎖驅動板、涂鴉三明治通訊板、涂鴉三明治電源板、STM32開發(fā)板

涂鴉云開發(fā)平臺:設備管理、設備控制

微信小程序(經由涂鴉小程序SDK開發(fā)):用戶掃碼開柜存放、用戶取用存

管理后臺(由開發(fā)者服務器運行):用戶列表、存放記錄、管理員授權開柜、設備列表

第2步:組裝設備PCBA和開發(fā)嵌入式軟件

暫存柜硬件部分

暫存柜分為四部分:

門鎖驅動板,門鎖驅動原理如下圖所示:

7b67318be8264c6ea453e2565dce202b~tplv-tt-shrink:640:0.image

涂鴉三明治通訊板

STM32開發(fā)板

涂鴉三明治電源板

暫存柜嵌入式軟件部分

作品使用的涂鴉智能MCU接入方式接入:

1、在涂鴉IoT平臺上參考選品類創(chuàng)建產品創(chuàng)建一個四路排查(升級版)_Wi-Fi_BLE產品。產品的模型使用的是插排,該排插硬件方案與作者定義的智能暫存柜具備相似的DP(DataPoint)定義。

2、在功能定義頁面,根據(jù)智能暫存柜的相關功能定義設置DP。

作者添加了4個DP,分別對應4個柜鎖。

3、在硬件開發(fā)頁面,選擇一款模組,例如WBR3模組,然后在下載資料區(qū)域下載MCU_SDK。

4、配置開發(fā)板,移植SDK。

作者使用的STM32官方開發(fā)板,采用STM32CubeMX+CLion方式進行單片機開發(fā)。

作者使用了一個串口用于涂鴉開發(fā)板通訊,以及四個GPIO分別控制對應的門鎖繼電器。對接涂鴉MCU_SDK時,作者主要使用了以下功能:

串口接收和發(fā)送

SDK初始化以及運行

網絡狀態(tài)以及配網

串口接收和發(fā)送

串口發(fā)送使用的寄存器方式發(fā)送數(shù)據(jù):

c7bfbf59141e40679a590d292456f25a~tplv-tt-shrink:640:0.image

將這個發(fā)送函數(shù)填入到SDK的Protocol.c中:

3c857d38865e4b8687378dfa0a9c7957~tplv-tt-shrink:640:0.image

使用串口中斷接收進行串口數(shù)據(jù)的接收:

21bab5d812f444fbb8cc3ca6db28aa96~tplv-tt-shrink:640:0.image

并且在main里面啟用串口中斷接收:

__HAL_UART_ENABLE_IT(&huart1,UART_IT_RXNE);

SDK初始化以及運行

主要是在main和主循環(huán)里面分別填入wifi_protocol_init和wifi_uart_service。

6545beff2315408fb8d51b47ca5eada1~tplv-tt-shrink:640:0.image

獲取網絡狀態(tài)以及配網,使用mcu_get_wifi_work_state即可獲取當前模組的網絡狀態(tài)。

3d030f8458aa45d4ab3a17e843f5b470~tplv-tt-shrink:640:0.image

復位配網

涂鴉提供了Wi-Fi快連配網和熱點配網兩種配網方式。

調用SDK的mcu_api.c中的mcu_reset_wifi()即可對模組進行復位并且進入配網狀態(tài)。

控制繼電器開鎖

原理是給GPIO一個250ms的高電平使鎖芯通電彈出鎖鉤。以開關1為例,其他以此類推。

56e3d2676ea24142abf63ecc6956a2c1~tplv-tt-shrink:640:0.image

第3步:連接涂鴉云開發(fā)平臺

作者調用了涂鴉云開發(fā)平臺的設備信息查詢和設備控制能力進行后端環(huán)境開發(fā)。因為涂鴉云開發(fā)平臺的主要SDK為JavaSDK,而作者的后端環(huán)境的使用的是PHP,所以作者自行調用云開發(fā)平臺API寫了一個類,實現(xiàn)了是簡單的鑒權和獲取設備信息、設備控制。

實現(xiàn)代碼如下:

get_devices($devicesid);$data=json_decode($data,true);//var_dump($data);if($data['success']){foreach($data['result']['status']as$lock){if(!$lock['value']){$data=$this->set_device($devicesid,$lock['code'],true);$data=json_decode($data,true);if($data['success']){return$lock['code'];}}}}returnfalse;}publicfunctionRequestclose($devicesid,$lockcode){$data=$this->set_device($devicesid,$lockcode,false);$data=json_decode($data,true);return$data['success'];}publicfunctionget_devices($devicesid){$this->get_token();$data=$this->queryheader_business();$requestdata=$this->query_curl("GET",APIURL."/v1.0/devices/".$devicesid,$data,"");return$requestdata;}publicfunctionget_devices_list($page_no,$page_size,$product_id){$this->get_token();$data=$this->queryheader_business();$requestdata=$this->query_curl("GET",APIURL."/v1.0/devices?page_no=".$page_no."&page_size=".$page_size."&product_id=".$product_id,$data,"");return$requestdata;}publicfunctionset_device($devicesid,$comkey,$state){$postdata=array();$postdata["commands"][0]["code"]=$comkey;$postdata["commands"][0]["value"]=$state;$postdata=json_encode($postdata);$this->get_token();$data=$this->queryheader_business();$requestdata=$this->query_curl("POST",APIURL."/v1.0/devices/".$devicesid."/commands",$data,$postdata);return$requestdata;}privatefunctionaccess_token(){$data=$this->queryheader_token();$requestdata=$this->query_curl("GET",APIURL."/v1.0/token?grant_type=1",$data,"");$arraydata=json_decode($requestdata,true);if($arraydata['success']=="true"){$this->access_token=$arraydata['result']['access_token'];$this->refresh_token=$arraydata['result']['refresh_token'];$this->expire_time=time()+$arraydata['result']['expire_time'];$this->uid=$arraydata['result']['uid'];$tokendata=array();$tokendata['access_token']=$this->access_token;$tokendata['refresh_token']=$this->refresh_token;$tokendata['expire_time']=$this->expire_time;$tokendata['uid']=$this->uid;$tokendata=json_encode($tokendata);$this->set_token($tokendata);returntrue;}returnfalse;}privatefunctionget_token(){$redis=newRedis();//$redis->connect(redisarr,6379);//$redis->auth('demo');$data=$redis->get('token');$arraydata=json_decode($data,true);$this->access_token=$arraydata['access_token'];$this->refresh_token=$arraydata['refresh_token'];$this->expire_time=$arraydata['expire_time'];$this->uid=$arraydata['uid'];if($this->expire_time-time()access_token();}//$redis->close();}privatefunctionset_token($data){$redis=newRedis();//$redis->connect(redisarr,6379);//$redis->auth('demo');$redis->set('token',$data);//$redis->close();}privatefunctionqueryheader_business(){list($t1,$t2)=explode('',microtime());$time=(float)sprintf('%.0f',(floatval($t1)+floatval($t2))*1000);$Message=client_id.$this->access_token.$time;$sha256data=hash_hmac('sha256',$Message,secret,false);$sign=strtoupper($sha256data);$headerdata=array('client_id:'.client_id,'sign:'.$sign,'sign_method:HMAC-SHA256','t:'.$time,'lang:ch','access_token:'.$this->access_token,'Content-Type:application/json');return$headerdata;}privatefunctionqueryheader_token(){list($t1,$t2)=explode('',microtime());$time=(float)sprintf('%.0f',(floatval($t1)+floatval($t2))*1000);$Message=client_id.$time;$sha256data=hash_hmac('sha256',$Message,secret,false);$sign=strtoupper($sha256data);$headerdata=array('client_id:'.client_id,'sign:'.$sign,'t:'.$time,'sign_method:HMAC-SHA256','lang:ch');return$headerdata;}privatefunctionquery_curl($typequery,$url,$headerdata=array(),$bodydata=array()){$curl=curl_init();curl_setopt($curl,CURLOPT_URL,$url);curl_setopt($curl,CURLOPT_HTTPHEADER,$headerdata);curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);curl_setopt($curl,CURLOPT_HEADER,false);curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,false);//curl_setopt($curl,CURLOPT_SSL_VERIFYHOST,false);if($typequery=="POST"){curl_setopt($curl,CURLOPT_POST,true);curl_setopt($curl,CURLOPT_POSTFIELDS,$bodydata);}else{curl_setopt($curl,CURLOPT_POST,false);}$tmpInfo=curl_exec($curl);curl_close($curl);return$tmpInfo;}}

第4步:開發(fā)微信小程序

用戶開柜存放

實現(xiàn)原理:掃碼存放-用戶掃碼-把用戶ID和設備ID(掃碼結果)-云端請求開鎖-完成

實現(xiàn)代碼:

用戶取出存放

實現(xiàn)原理:用戶點擊取出存放-云端查詢是否存在未取出的存放-如有請求開柜,若無反饋無存放。

實現(xiàn)代碼:

第5步:開發(fā)管理后臺

智能暫存柜管理后臺使用ThinkPHP5框架和Xadmin前端框架進行開發(fā)。

用戶列表

實現(xiàn)原理:用戶授權小程序獲取用戶信息后,調用后端接口對用戶的注冊并寫入數(shù)據(jù)庫,用戶列表只是遍歷數(shù)據(jù)庫表的數(shù)據(jù)。

實現(xiàn)代碼:

c4412172bb2c4507b92b3cf068146eda~tplv-tt-shrink:640:0.image

e9336cab78c7440f92a6b571c7bcb305~tplv-tt-shrink:640:0.image

存放記錄

實現(xiàn)原理:獲取數(shù)據(jù)庫設備存儲記錄表的數(shù)據(jù)并且遍歷出來,而管理員開柜是通過傳遞ID給前端,當管理員按開柜的按鈕即可把列表ID傳后端,通過ID在數(shù)據(jù)庫中查找設備ID和開柜號,并調用SDK控制設備開柜。

實現(xiàn)代碼:

f51e04cad1cc40e1915ae2afbb78b278~tplv-tt-shrink:640:0.image

設備列表實現(xiàn)原理:通過SDK獲取設備列表,并傳遞到前端進行遍歷。

實現(xiàn)代碼:

cce90f3e1f0d45dab6009dc0f532afb6~tplv-tt-shrink:640:0.image

涂鴉物聯(lián)網開發(fā)平臺為開發(fā)者提供了便捷的IoT開發(fā)工具與服務,助力開發(fā)者更高效的完成設備接入,并為開發(fā)者提供物聯(lián)網應用開發(fā)及場景服務能力。

看到這里你是否也很心動?不如親手實踐,自己手動一個校園暫存柜吧~

auth.tuya.com/?from=https%3A%2F%2Fiot.tuya.com%2F&_source=795a75d7c1af33f95d8ea55409e4b22e

編輯:jq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • mcu
    mcu
    +關注

    關注

    146

    文章

    16667

    瀏覽量

    347831
  • STM32
    +關注

    關注

    2258

    文章

    10828

    瀏覽量

    352507
  • wi-fi
    +關注

    關注

    14

    文章

    2054

    瀏覽量

    123699
  • 調光器
    +關注

    關注

    4

    文章

    143

    瀏覽量

    23259
收藏 人收藏

    評論

    相關推薦

    PID光離子氣體傳感器在實驗室危險化學廢棄物暫存中的應用

    在現(xiàn)代實驗室管理中,危險化學廢棄物的安全暫存與環(huán)保處理是至關重要的一環(huán)。隨著國家和地方政府對危險化學品管理法律法規(guī)的不斷完善,實驗室暫存的改進與優(yōu)化成為了保障實驗室安全、防止環(huán)境污染的必要措施。工
    的頭像 發(fā)表于 08-01 10:44 ?258次閱讀
    PID光離子氣體傳感器在實驗室危險化學廢棄物<b class='flag-5'>暫存</b><b class='flag-5'>柜</b>中的應用

    帶你快速了解FSC擾動周波快速切換

    小編根據(jù)小伙伴們的反饋匯總了關于FSC擾動周波快切的關鍵問題,那就跟隨這些問題一起來快速了解FSC擾動周波快切吧。
    的頭像 發(fā)表于 07-19 11:02 ?144次閱讀

    智能軟啟動怎么設置

    軟啟動的設置方法和步驟。 一、智能軟啟動的組成 主電路:智能軟啟動的主電路主要由晶閘管、接觸
    的頭像 發(fā)表于 06-18 14:31 ?634次閱讀

    4G工業(yè)路由器快遞應用案例(覆蓋所有場景)

    快遞展示圖 隨著電商的蓬勃發(fā)展,快遞行業(yè)迎來高速增長。為提高快遞效率、保障快件安全,智能快遞
    的頭像 發(fā)表于 05-07 17:14 ?310次閱讀
    4G工業(yè)路由器<b class='flag-5'>快遞</b><b class='flag-5'>柜</b>應用案例(覆蓋所有場景)

    嵌入式工業(yè)一體機在快遞設備上的應用

    隨著電子商務的蓬勃發(fā)展,快遞作為一種高效的自助包裹存取服務,已經成為城市物流不可或缺的一部分。在這種背景下,嵌入式工業(yè)一體機的應用,為快遞設備帶來了更高的效率和可靠性。佳維視嵌入式
    的頭像 發(fā)表于 04-19 10:43 ?278次閱讀
    嵌入式工業(yè)一體機在<b class='flag-5'>快遞</b><b class='flag-5'>柜</b>設備上的應用

    樂華嵌入式工控一體機有哪些特點?

     相信大家應該都到豐巢快遞快遞,而快遞柜上面的屏幕就是嵌入式工控一體機,智能
    的頭像 發(fā)表于 04-16 11:16 ?220次閱讀

    工控機的無限可能2--智慧城市

    一、智能 隨著網絡技術的發(fā)展,網購因方便快捷、價格優(yōu)惠、不受時空限制等優(yōu)勢已成為用戶重要的消費方式。快遞員因滿,或型單一不能投遞,只能
    的頭像 發(fā)表于 03-18 11:40 ?290次閱讀
    工控機的無限可能2--智慧城市

    智能工具柜-RFID智能工具柜管理系統(tǒng)

    ,采用RFID技術實現(xiàn)信息化已經成為了必要性。RFID技術可以實現(xiàn)對工具的 自動識別感應 、追蹤和管理,從而提高工具管理的效率和準確性。 智能工具柜參數(shù): 1)東識智能工具柜DW-G104R通過對工具上的RFID標簽進行非接觸
    的頭像 發(fā)表于 03-17 16:39 ?534次閱讀

    快遞預約上門件API免費接口

    功能說明 通知快遞公司快遞員上門攬件 號和下單都由攬件網點執(zhí)行,用于散客件 若已和網點簽約并開通大客戶下單賬號,可使用 電子面單?接口下單 接口信息 接口指令 1001 批量請求
    的頭像 發(fā)表于 01-24 14:43 ?261次閱讀

    揭秘快遞24H*7連續(xù)供電的奧秘:YM系列工業(yè)級連接器更適合

    快遞快遞行業(yè)解決最后一公里配送問題的智能終端設備,它為靈活件、簡化配送帶來了高效體驗。快遞
    的頭像 發(fā)表于 01-12 08:13 ?273次閱讀
    揭秘<b class='flag-5'>快遞</b><b class='flag-5'>柜</b>24H*7連續(xù)供電的奧秘:YM系列工業(yè)級連接器更適合

    NV080D語音芯片:讓智能快遞件更便利

    智能快遞置入NV080D語音芯片,可實現(xiàn)24小時件、寄件自助服務,提高件效率,方便視障或手部不便人群。芯片性能穩(wěn)定,可適應長時間工作,
    的頭像 發(fā)表于 11-24 10:44 ?346次閱讀

    配電智能監(jiān)控系統(tǒng)

    配電智能監(jiān)控系統(tǒng)是物聯(lián)網技術的集成應用,通過采集模塊來收集、整合和處理數(shù)據(jù)信息,讓各個子系統(tǒng)能夠進行聯(lián)動和配合使用。力安科技配電智能監(jiān)控系統(tǒng)依托電易云-智慧電力物聯(lián)網,裝
    的頭像 發(fā)表于 10-20 13:50 ?1580次閱讀
    配電<b class='flag-5'>柜</b><b class='flag-5'>智能</b>監(jiān)控系統(tǒng)

    哪款二維碼掃碼模塊適合嵌入智能快遞?二維碼掃描模組模塊推薦

    作為現(xiàn)代化的物流服務設施,智能快遞的使用愈發(fā)普遍。為了提供更便捷和高效的服務體驗,許多快遞生產廠商甚至配備了二維碼掃描模組模塊來提升用戶
    的頭像 發(fā)表于 10-19 11:21 ?779次閱讀
    哪款二維碼掃碼模塊適合嵌入<b class='flag-5'>智能</b><b class='flag-5'>快遞</b><b class='flag-5'>柜</b>?二維碼掃描模組模塊推薦

    高壓源無線測溫系統(tǒng)

    高壓源無線測溫系統(tǒng)由設備層的源無線溫度傳感器和溫度顯示單元,通訊層的邊緣計算網關以及站控層的無線測溫系統(tǒng)主機組成,實現(xiàn)高壓關鍵電氣部位的溫度在線監(jiān)測。高壓
    的頭像 發(fā)表于 09-26 10:20 ?1032次閱讀
    高壓<b class='flag-5'>柜</b><b class='flag-5'>無</b>源無線測溫系統(tǒng)

    智能小車DIY攻略

    本文是為正準備 DIY 一輛智能小車或已在進行中的學生、玩家們提供一些綜合、客觀的信息,作為其方案選擇、取舍的參考。系個人所見,歡迎交流、指正!
    發(fā)表于 09-26 06:22