電子發(fā)燒友App

硬聲App

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

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

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>創(chuàng)建Bolt IoT支持的文本/語(yǔ)音到莫爾斯編碼器

創(chuàng)建Bolt IoT支持的文本/語(yǔ)音到莫爾斯編碼器

2022-12-01 | zip | 0.06 MB | 次下載 | 免費(fèi)

資料介紹

描述

摩爾斯電碼是電信中使用的一種方法,用于將文本字符編碼為兩種不同信號(hào)持續(xù)時(shí)間的標(biāo)準(zhǔn)化序列,稱(chēng)為點(diǎn)和破折號(hào),或滴和達(dá)。莫爾斯電碼以電報(bào)的發(fā)明者之一塞繆爾·莫爾斯命名。

如果您想手動(dòng)編碼為 Morse,下面是一個(gè)可以派上用場(chǎng)的圖表……

pYYBAGNs5e-AdoBEAAAhH0ZtUKA855.png
國(guó)際摩爾斯電碼表
?

但是,為了現(xiàn)代技術(shù),我創(chuàng)建了 Bolt IoT 支持的文本/語(yǔ)音到莫爾斯編碼器,我還將向您展示如何創(chuàng)建它。讓我們開(kāi)始吧!

電路連接

這就是您需要進(jìn)行電路連接的方式...

?

poYBAGNs5fOAXyGuAADDLPHDUVw769.png
電路連接圖
?

?

方法

第 1 步:將電路板放在平坦的表面上。

poYBAGNs5fWAbezdAAApIBUxMgQ573.png
面包板
?

步驟 2:按以下方式連接電阻。

pYYBAGNs5fqAOK6LAAA5IXwz9TQ011.png
電阻連接
?

第 3 步:LED 的正極連接到電阻器,將負(fù)極連接到電路板的另一側(cè)。

poYBAGNs5f2AG5sbAAA9TZSddhw382.png
LED 貼裝
?
poYBAGNs5gCAMY9pAAAbbOsnD6A810.png
LED連接
?

第 4 步:將壓電蜂鳴器的正極連接到電路板的正極,將負(fù)極連接到負(fù)極。

poYBAGNs5gOAZGZVAAApvcmxDvA212.png
蜂鳴器連接
?

第 5 步:現(xiàn)在我們必須按照以下方式進(jìn)行連接,以便我們可以將蜂鳴器和 LED 的負(fù)極引腳連接到 BOLT Wi-Fi 模塊的 GND 引腳。

pYYBAGNs5gaAOliIAABieF0l4KQ537.png
LED負(fù)極引腳連接
?
poYBAGNs5guAWghPAABxUeWqfeg198.png
蜂鳴器負(fù)極引腳連接
?
poYBAGNs5g2AVB5YAABo4cyi8uM848.png
LED 和蜂鳴器負(fù)極引腳一起連接到 GND 引腳
?

第 6 步:使用跳線將蜂鳴器的正極引腳連接到 Bolt Wi-Fi 模塊上的 Pin-1。

poYBAGNs5hCAf-WyAABn-rN5L3k890.png
蜂鳴器正腳連接
?
pYYBAGNs5hKATAA6AABNGk4YJDI630.png
蜂鳴器正極引腳連接到 Pin-1
?

步驟 7:將與電阻串聯(lián)的 LED 的正極引腳連接到 BOLT W-Fi 模塊的 Pin-0。

poYBAGNs5hWAKCwnAAB2PsNU7n8149.png
LED正極引腳到電阻到引腳0的串聯(lián)連接
?
pYYBAGNs5hmAP283AABUOys03Zo779.png
Pin-0 使用跨接電纜連接到電阻器和 LED 正極引腳
?

Step8:將Wi-Fi模塊接入5V電源,連接云端。

poYBAGNs5hyAcg1JAAA73Jh-5qo591.png
連接電源
?
poYBAGNs5h-AQvVtAAB3X-AH51g495.png
BOLT 開(kāi)啟并連接到 BOLT Cloud
?

接下來(lái)是您需要 PyCharm 的編程部分。

連接到代碼(在本地計(jì)算機(jī)上運(yùn)行 Web 應(yīng)用程序)

為此,請(qǐng)確保您已安裝 PyCharm,并且無(wú)論操作系統(tǒng)如何,步驟都保持不變,但這僅在 Windows 10 和 Kali Linux 上進(jìn)行了測(cè)試。

步驟1:在您的計(jì)算機(jī)上創(chuàng)建一個(gè)文件夾并輸入它。

poYBAGNs5iGAPRb0AABMzRp0pUU402.png
步驟1
?

第 2 步:在該文件夾中克隆 Morser 存儲(chǔ)庫(kù)。

使用命令:

git clone https://github.com/lankabhedi/morser.git
pYYBAGNs5iSAeTdXAAB_Dsak2UE390.png
克隆 Morser App 存儲(chǔ)庫(kù)
?

第 3 步:在 PyCharm 中打開(kāi)此目錄。

使用命令:

pycharm .
pYYBAGNs5ieABfgtAAI2Zka2Fic629.png
打開(kāi) PyCharm
?

第 4 步:打開(kāi) Pipfile 并選擇安裝插件。

poYBAGNs5iuAIX_eAAGT6ogHzfE077.png
安裝插件
?
poYBAGNs5i-ARR2WAABaO8hFE-g275.png
接受安裝
?

第 5 步:選擇終端并運(yùn)行以下命令。

pip install -r ./morser/requirements.txt
pYYBAGNs5jSANpsyAAJ2zHSv74M306.png
安裝應(yīng)用程序要求
?

第 6 步:在同一終端中,運(yùn)行以下命令。

python ./morser/app.py
pYYBAGNs5kCAcyCdAAIWRFwGKJk812.png
運(yùn)行應(yīng)用程序
?

第 7 步:單擊藍(lán)色的 IP 地址,您的應(yīng)用程序?qū)⒃谀哪J(rèn) Web 瀏覽器中打開(kāi)。

poYBAGNs5kWASoCOAAIPDz0fbgY222.png
打開(kāi)網(wǎng)絡(luò)應(yīng)用程序
?
pYYBAGNs5kiAXFYYAADPV4AaGuU849.png
莫塞爾
?

輸入您的詳細(xì)信息,然后按“發(fā)送到螺栓”。

poYBAGNs5k2AFVFKAABpLyAL17o231.png
成功畫(huà)面
?

如果您的螺栓設(shè)備離線,它將顯示錯(cuò)誤屏幕。

pYYBAGNs5lGAA4J-AABjARXTsog596.png
錯(cuò)誤屏幕
?

連接 IFTTT 由 Google Assistant 控制

出于測(cè)試目的,我在 Heroku 上部署了這個(gè)應(yīng)用程序。

網(wǎng)站:http://morser-app.herokuapp.com/

poYBAGNs5lSAKeIKAADYyfOYMkQ209.png
?

我為此開(kāi)發(fā)了一個(gè) API,我們需要將其連接為 IFTTT 網(wǎng)站上的 Webhook。由于我的應(yīng)用程序托管在“免費(fèi)層”上,因此您的 API 請(qǐng)求可能會(huì)超時(shí)。

API 請(qǐng)求的格式為:

https://morser-app.herokuapp.com/api?api_key=bolt-api-key&device_id=bolt-device-id&message=your-message

您需要用您自己的值替換“bolt-api-key”、“device-id”和“your-message”。

根據(jù)設(shè)備狀態(tài),它將為您提供以下輸出。

{
"device_status": "offline",
"message_passed": "no",
"morse_code": ""
}
poYBAGNs5lmABQ8kAAAydbO1qIQ473.png
POSTMAN 應(yīng)用程序的屏幕截圖
?
{
"device_status": "online",
"message_passed": "yes",
"morse_code": ".. "
}
pYYBAGNs5luAf3toAAA340ZN7nU384.png
POSTMAN 應(yīng)用程序的屏幕截圖
?

請(qǐng)注意,除非設(shè)備打開(kāi),否則“morse_code”不會(huì)返回任何內(nèi)容。

要將其與 Google Assistant 一起使用,請(qǐng)按照給定的步驟操作。

第 1 步:登錄您的 IFTTT 帳戶(hù),然后單擊“創(chuàng)建”。

網(wǎng)站:https://ifttt.com/home

pYYBAGNs5mOACfEVAAD99jLaZRY604.png
IFTTT 創(chuàng)建新小程序
?

第 2 步:單擊“添加”。

pYYBAGNs5maAFG2GAAEJffvIboc301.png
IFTTT 創(chuàng)建小程序
?

第三步:點(diǎn)擊“谷歌助手”。

poYBAGNs5mmADWPmAACWkrrEQyE775.png
選擇 Google 助理
?

第 4 步:選擇以下選項(xiàng)。

poYBAGNs5m2AUu53AAKA-xfbFWY772.png
成分屏幕
?

第 5 步:輸入以下值。

pYYBAGNs5nGAEO2pAACPL0icFUg186.png
觸發(fā)編輯頁(yè)面
?

第 6 步:點(diǎn)擊“添加”

poYBAGNs5nSAJWDEAAEhV7Gayg0105.png
然后那個(gè)頁(yè)面
?

第 7 步:選擇“網(wǎng)絡(luò)鉤子”。

poYBAGNs5neAXJrFAACeYjgy3UY101.png
選擇 Webhook
?

第 8 步:選擇“發(fā)出網(wǎng)絡(luò)請(qǐng)求”。

pYYBAGNs5nuAY7AUAAEI5C8y-Kk180.png
選擇“發(fā)出網(wǎng)絡(luò)請(qǐng)求”
?

第 9 步:將“bolt-api-key”和“device-id”替換為您自己的。

poYBAGNs5n6AKjABAACtCfUfC9M093.png
編輯操作字段
?

第 10 步:選擇“繼續(xù)”。

pYYBAGOIJlyAWHxuAADRmN6SREM733.png
選擇“繼續(xù)”
?

第 11 步:查看并單擊“完成”。

poYBAGOIJl-AIbruAADB5aIl3TM010.png
審查并完成
?

您將看到您的小程序,如下所示。

poYBAGOIJmKASdMRAADwGM2o_rc513.png
我的小程序頁(yè)面
?

命令行應(yīng)用程序代碼

如果您不想使用任何 Web 應(yīng)用程序并且只想從單個(gè) python 腳本運(yùn)行它,您可以使用以下代碼。

from boltiot import Bolt
import time as t

api_key = input("Enter your API key:")
device_id = input("Enter your Bolt Device ID:")
mybolt = Bolt(api_key, device_id)

MORSE_CODE_DICT = { 'A':'.-', 'B':'-...',
                    'C':'-.-.', 'D':'-..', 'E':'.',
                    'F':'..-.', 'G':'--.', 'H':'....',
                    'I':'..', 'J':'.---', 'K':'-.-',
                    'L':'.-..', 'M':'--', 'N':'-.',
                    'O':'---', 'P':'.--.', 'Q':'--.-',
                    'R':'.-.', 'S':'...', 'T':'-',
                    'U':'..-', 'V':'...-', 'W':'.--',
                    'X':'-..-', 'Y':'-.--', 'Z':'--..',
                    '1':'.----', '2':'..---', '3':'...--',
                    '4':'....-', '5':'.....', '6':'-....',
                    '7':'--...', '8':'---..', '9':'----.',
                    '0':'-----', ', ':'--..--', '.':'.-.-.-',
                    '?':'..--..', '/':'-..-.', '-':'-....-',
                    '(':'-.--.', ')':'-.--.-'}


def encrypt(message):
    cipher = ''
    for letter in message.upper():
        if letter != ' ':
            cipher += MORSE_CODE_DICT[letter] + ' '
        else:
            cipher += ' '

    return cipher

def main():
    message = input("Enter you message:")
    result = encrypt(message.upper())
    print(message.upper())
    print(result)

    mybolt.digitalWrite("1", "LOW")
    mybolt.digitalWrite("1", "HIGH")
    t.sleep(0.01)
    mybolt.digitalWrite("1", "LOW")
    mybolt.digitalWrite("1", "HIGH")
    t.sleep(0.01)
    mybolt.digitalWrite("1", "LOW")
    mybolt.digitalWrite("1", "HIGH")
    t.sleep(0.01)
    mybolt.digitalWrite("1", "LOW")
    mybolt.digitalWrite("1", "HIGH")
    t.sleep(0.01)
    mybolt.digitalWrite("1","LOW")

    for char in result:

        if(char == "-"):
            mybolt.digitalWrite("0", "LOW")
            mybolt.digitalWrite("0", "HIGH")
            t.sleep(3)
            mybolt.digitalWrite("0", "LOW")

        elif(char == "."):
            mybolt.digitalWrite("0", "LOW")
            mybolt.digitalWrite("0", "HIGH")
            t.sleep(1)
            mybolt.digitalWrite("0", "LOW")

        elif(char == " "):
            mybolt.digitalWrite("1", "LOW")
            mybolt.digitalWrite("1", "HIGH")
            t.sleep(0.2)
            mybolt.digitalWrite("1", "LOW")
            t.sleep(0.1)

        else:
            continue


if(__name__ == '__main__'):
    main()

請(qǐng)確保boltiot在終端窗口中使用以下命令安裝模塊。

pip install boltiot
pYYBAGOIJmWAIPCJAAHMCAi-VHY829.png
安裝 BoltIot 模塊
?

結(jié)論

如果你堅(jiān)持到底,高五!

?

?


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評(píng)估板參考手冊(cè)
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開(kāi)發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊(cè)
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)