資料介紹
描述
描述
由于 2019 年新型冠狀病毒(COVID-19)引起的長(zhǎng)期流行病爆發(fā),2020 年正在超越現(xiàn)代人類生活中最糟糕的一年。這種新穎的社區(qū)健康問題導(dǎo)致了世界各地衛(wèi)生系統(tǒng)的崩潰和經(jīng)濟(jì)放緩,同樣影響了我們彼此相處的方式、我們的生活方式和工作方式。據(jù)大流行科學(xué)家稱,此類事件可能會(huì)一次又一次地發(fā)生,因此我們必須開發(fā)有助于解決或緩解這些問題的技術(shù)。
在大流行期間,機(jī)器人技術(shù)發(fā)揮了重要作用,因?yàn)樵S多人都知道,機(jī)器人具有的優(yōu)勢(shì)之一是能夠在對(duì)人類有害的極端環(huán)境中工作,例如核災(zāi)難、自然災(zāi)害、深礦以及最終環(huán)境大量未知病原體,例如導(dǎo)致 covid-19 的 SARS-CoV-2 病毒。
幸運(yùn)的是,我們正處于一個(gè)任何人都可以在家中構(gòu)建機(jī)器人的時(shí)代,只需遵循一些簡(jiǎn)短的指令。此外,還有大量的專家程序員社區(qū),例如制造商,可以通過他們找到構(gòu)建程序所需的幫助。然而,在這個(gè)大流行更潛伏的時(shí)期,許多技術(shù)發(fā)展都集中在建造大型而堅(jiān)固的機(jī)器人上,以便在購(gòu)物中心或大型公共實(shí)體建筑中使用,而此時(shí)大多數(shù)人都希望擁有一個(gè)這些機(jī)器人用于自己家的消毒。不僅能夠消除當(dāng)前的 Covid-19 病毒,還能夠消除其他病毒、細(xì)菌和真菌的設(shè)備。在這些情況下,考慮到其在市場(chǎng)上的尺寸和價(jià)格,如圖 1 所示的大型機(jī)器人不是最合適的。
這就是為什么我的解決方案是基于家用消毒機(jī)器人,比如吸塵機(jī)器人或帶有紫外線 (UV) 燈的吸塵機(jī)器人。對(duì)于想要保持家中清潔和消毒的人們來(lái)說(shuō),這些機(jī)器人體積小且價(jià)格合理。
這些機(jī)器人在消毒過程方面具有一定的特殊性,例如相互通信的能力。這種通信允許在消毒中進(jìn)行協(xié)調(diào)并優(yōu)化執(zhí)行此任務(wù)的時(shí)間。為此,我依靠稱為多智能體系統(tǒng) (MAS) 的人工智能 (AI) 工具。MAS 允許創(chuàng)建能夠在環(huán)境中相互通信、感知和行動(dòng)的實(shí)體。MAS 的基本單元是控制每個(gè)機(jī)器人的代理。通過這種方式,我們賦予機(jī)器人自主、智能和社交的特征。
特征
MAS 的特點(diǎn)之一是它的行為類似于其他人工智能、機(jī)器視覺和低級(jí)控制工具的容器。利用這種能力,每個(gè)代理(機(jī)器人)都結(jié)合了人工視覺工具、物體和人識(shí)別系統(tǒng)。為此,所有使用 Raspberry Pi 4 構(gòu)建的機(jī)器人都集成了 OpenVino 工具和英特爾神經(jīng)計(jì)算機(jī)棒 2。然而,這種神經(jīng)棒允許使用深度學(xué)習(xí)模型來(lái)檢測(cè)人、物體、地點(diǎn)等. 這種視覺和分類工具被用作防止紫外線照射燒傷的一種措施,它通過檢測(cè)試劑附近是否有人存在,從而使試劑能夠關(guān)閉燈。同時(shí),作為一種冗余保護(hù)措施,機(jī)器人有一個(gè) PIR 傳感器,可以檢測(cè)人體發(fā)出的運(yùn)動(dòng)和紅外輻射。因此,通過這兩個(gè)保護(hù)系統(tǒng)中的每一個(gè)的輸出,代理將有足夠的信息來(lái)停用紫外線燈。
機(jī)器人建造
這些機(jī)器人是使用帶有全向輪子的平臺(tái)建造的,以方便在復(fù)雜環(huán)境中導(dǎo)航。他們還有一個(gè)用于映射和導(dǎo)航的 YDLIDAR X4、一個(gè)用于改進(jìn)低級(jí)控制的 Arduino Mega 2560 和/或代理居住的 Raspberry Pi 4 或 Jetson Nano。圖 2 顯示了其中一種 3D 設(shè)計(jì)模型。
圖 3 顯示了廚房?jī)?nèi)機(jī)器人的 3D 表示。
該機(jī)器人是易于修改和/或更新的模塊化機(jī)器人,可以改變燈的類型、高度等。在機(jī)器人的上部,紫外線燈是固定的,這將有助于消毒。由于家庭消毒的復(fù)雜性,燈可以45度角定向,360度旋轉(zhuǎn)。這使我們能夠?qū)撞炕蜃雷拥撞康葏^(qū)域進(jìn)行消毒(圖 4)。
如上所述,機(jī)器人有兩個(gè)神經(jīng)計(jì)算機(jī)棒 2,它們使機(jī)器人能夠引入機(jī)器學(xué)習(xí)算法,使機(jī)器人能夠識(shí)別物體和/或在未來(lái)確定哪些物體更容易被污染,因此花費(fèi)更多時(shí)間在消毒過程中(圖5)。
圖 6 顯示了帶有 Sense-Hat 的機(jī)器人,使用其磁力計(jì)、陀螺儀和加速度計(jì),使機(jī)器人能夠更好地導(dǎo)航和定位自己。所有這些在做地圖和 SLAM 時(shí)都非常重要。
為了實(shí)現(xiàn)這種導(dǎo)航,機(jī)器人必須有工具來(lái)檢測(cè)障礙物并將位置映射到其工作環(huán)境中的位置。為此目的,已加入激光雷達(dá),使其能夠進(jìn)行 SLAM 制圖。圖 7 顯示了一個(gè)真實(shí)激光雷達(dá)獲得 SLAM 批準(zhǔn)的示例。
圖 8 顯示了機(jī)器人的下半部分,其中包含機(jī)器人中的每個(gè)元素,例如激光雷達(dá)、英特爾神經(jīng)計(jì)算機(jī)棒 2 以及使機(jī)器人工作的其他硬件。
軟件
所有機(jī)器人都在兩個(gè)級(jí)別進(jìn)行編程:基于 Arduino mega 2560 的最低級(jí)別使用 Arduino IDE 進(jìn)行編程,而頂級(jí)控制(即機(jī)器視覺、代理之間的消息傳遞或?qū)Ш剑┦褂?Python 3.7 進(jìn)行編程。此外,機(jī)器人可以使用 ROS 進(jìn)行控制,但是,這些原型是通過使用我目前正在開發(fā)的機(jī)器人控制和模擬工具來(lái)控制的,其中模擬和控制的核心是 Pybullet。這不僅可以控制機(jī)器人,還可以使用物理約束(重力、摩擦)或碰撞檢測(cè)進(jìn)行模擬。圖 9 顯示了廚房中的模擬,其中綠線代表機(jī)器人的虛擬激光雷達(dá),藍(lán)色線代表激光雷達(dá)光束的碰撞。
將模擬器集成到機(jī)器人控制系統(tǒng)中的優(yōu)點(diǎn)之一是,它可以制定最大化消毒過程的策略并確定燈的功率,如下圖 10 和 11 所示(激光雷達(dá)已停用)。
如前所述,機(jī)器人有能力通過使用 OpenVino 系統(tǒng)及其兩個(gè)神經(jīng)棒 2 來(lái)識(shí)別物體。但是,它可以識(shí)別的物體數(shù)量將取決于不同的需求,即哪些物體最有可能具有高概率細(xì)菌、病毒或真菌污染。然后,消毒器可以通過評(píng)估哪些物體最容易受到影響來(lái)確定這些物體的紫外線照射時(shí)間是否增加。
這些可以是一些例子來(lái)說(shuō)明這個(gè)項(xiàng)目:
必須為機(jī)器人創(chuàng)建數(shù)據(jù)集以識(shí)別這些對(duì)象。為了構(gòu)建這個(gè)數(shù)據(jù)集,我們自動(dòng)使用以下 Python 庫(kù):Bing Image Downloader。要安裝這個(gè)庫(kù),我們從命令終端輸入:pip install bing-image-downloader
一旦安裝了庫(kù),我們要做的是從我們的數(shù)據(jù)集中下載圖像,在我們的例子中是:
0 Bottle
1 Cup
2 Person
3 Sink_Bathroom
4 Toilet
要進(jìn)行此下載,我們使用以下腳本:
from bing_image_downloader.bing_image_downloader.downloader import download
query_string = ["Person", "Unknow","Cup", "Toilet", "Sink_Bathroom", "Bottle"]
for i in query_string:
download(i, limit=200, output_dir='dataset', adult_filter_off=True, force_replace=False)
這將創(chuàng)建一個(gè)名為 dataset 的文件夾,在該文件夾中,我們將找到一些帶有要分類的類名稱的子文件夾(圖 13)。
到目前為止,我們已經(jīng)準(zhǔn)備好訓(xùn)練數(shù)據(jù)集。這個(gè)過程可以通過 Keras 和 Tensorflow 使用 MobileNet 網(wǎng)絡(luò)完成,或者我們可以使用工具可教機(jī)器在線執(zhí)行此類訓(xùn)練(圖 14)。
我們簡(jiǎn)單地添加類的數(shù)量并上傳每個(gè)類對(duì)應(yīng)的圖像并進(jìn)行訓(xùn)練。
訓(xùn)練過程的結(jié)果如下圖所示:
另一方面,圖16是應(yīng)用教學(xué)機(jī)得到的混淆矩陣,圖13是我的移動(dòng)網(wǎng)絡(luò)訓(xùn)練得到的混淆矩陣。
我們可以觀察到兩個(gè)混淆矩陣之間存在一定的關(guān)系,但是,我的混淆矩陣在 0-1 之間進(jìn)行了歸一化。基于這些結(jié)果,我們可以得出結(jié)論,機(jī)器人將能夠識(shí)別用戶希望機(jī)器人投入更多時(shí)間進(jìn)行消毒的物體。
訓(xùn)練完模型后,下一步就是將其轉(zhuǎn)換為 Openvino 使用的格式。這個(gè)過程需要一些重要的步驟,第一個(gè)是安裝Openvino,我們參考Intel給出的說(shuō)明。安裝步驟因我們的操作系統(tǒng)而異(在我的情況下,我的操作系統(tǒng)是 Windows 10)。
安裝 Openvino 后,下一步就是創(chuàng)建通風(fēng)環(huán)境:
We create the environment: python3 -m venv openvino
We activate the environment: .\openvino\Scripts\activate
安裝后,下一步是查找 Openvino 已安裝的文件:
C:\Program Files (x86)\IntelSWTools\openvino\deployment_tools\model_optimizer\install_prerequisites
在環(huán)境中,它不允許我們以--user身份安裝必要的要求,因此我們修改文件。第一個(gè)是install_prerequisites我們查找單詞--user并將其刪除。一旦我們編輯了這個(gè)文件,我們就可以安裝先決條件。
安裝完所有內(nèi)容并且我們的模型為.h5格式后,接下來(lái)就是將此模型轉(zhuǎn)換為.pb模型。為此,我們使用以下代碼:
import tensorflow as tf
from tensorflow.python.keras.models import load_model
# Tensorflow 2.x
from tensorflow.python.framework.convert_to_constants import convert_variables_to_constants_v2
model = load_model("../KerasCode/Models/keras_model.h5")
# Convert Keras model to ConcreteFunction
full_model = tf.function(lambda x: model(x))
full_model = full_model.get_concrete_function(
tf.TensorSpec(model.inputs[0].shape, model.inputs[0].dtype))
# Get frozen ConcreteFunction
frozen_func = convert_variables_to_constants_v2(full_model)
frozen_func.graph.as_graph_def()
# Print out model inputs and outputs
print("Frozen model inputs: ", frozen_func.inputs)
print("Frozen model outputs: ", frozen_func.outputs)
# Save frozen graph to disk
tf.io.write_graph(graph_or_graph_def=frozen_func.graph,
logdir="./frozen_models",
name="keras_model.pb",
as_text=False)
這將返回一個(gè)文件“XXXX.pb”,好吧,接下來(lái)就是在安裝Openvino的文件夾中查找這個(gè)腳本mo_tf.py。一旦進(jìn)入這個(gè)文件夾,重要的是創(chuàng)建一個(gè)名為模型的文件夾(如果需要),并從命令終端(cmd),我們這樣寫:
python mo_tf.py --input_model model\keras_model.pb --input_shape [1,224,224,3] --output_dir model\
如果一切順利,我們將必須在此過程結(jié)束時(shí)擁有這些文件:
- keras_model.bin
- keras_model.mapping
- keras_model (XML)
- 標(biāo)簽.txt
?
- 電暈消毒紫外線機(jī)器人開源分享
- 使用ML8511紫外線傳感器Arduino的紫外線指數(shù)計(jì)
- Pinaka:UVD(紫外線消毒)機(jī)器人開源分享
- XentrinoBot UVR2(紫外線機(jī)器人)開源
- 防紫外線機(jī)器人開源分享
- 紫外線消毒機(jī)器人
- Roboboi智能紫外線消毒機(jī)器人
- 紫外線機(jī)器人開源分享
- 自主紫外線機(jī)器人
- 紫外線燈消毒機(jī)器人開源分享
- 紫外線機(jī)器人(Covid 戰(zhàn)士)
- 智能紫外線計(jì)(紫外線輻射監(jiān)測(cè))開源分享
- 紫外線殺菌消毒燈管專用照度計(jì)UVC254說(shuō)明書 2次下載
- 紫外線光源在更多的應(yīng)用 24次下載
- 紫外線擦除器的制作方法
- 紅外線紫外線的特點(diǎn)及應(yīng)用有哪些 293次閱讀
- 基于Arduino的紫外線傳感器設(shè)計(jì) 紫外線傳感器的工作原理和分類 671次閱讀
- 用于紫外線殺菌燈的電子鎮(zhèn)流電路分享 1.1w次閱讀
- 詳談智能手表/手環(huán)里的紫外線傳感器的作用 5224次閱讀
- 紫外線對(duì)三大類材料的降解原理及如何預(yù)防或減輕紫外線的降解 1.2w次閱讀
- dfrobotGUVA-S10GD UV紫外線傳感器簡(jiǎn)介 1969次閱讀
- 紫外線傳感器在皮膚醫(yī)療領(lǐng)域中的應(yīng)用 752次閱讀
- 紫外線傳感器在火焰檢測(cè)中的應(yīng)用 5652次閱讀
- 紫外線和紅外線感測(cè)暴露監(jiān)測(cè)功能方法 3564次閱讀
- 紫外線傳感器殺菌消毒原理解析 3886次閱讀
- 紫外線殺菌燈殺菌原理和特點(diǎn) 5.1w次閱讀
- 數(shù)字式紫外線傳感器產(chǎn)品說(shuō)明和應(yīng)用 1426次閱讀
- 針對(duì)紫外線的四個(gè)波段,應(yīng)用對(duì)應(yīng)波段的紫外線傳感器分析 5584次閱讀
- 紫外線治療儀與紫外線波段之間的關(guān)系解析 5053次閱讀
- 紫外線傳感器電路 7759次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多