在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

iPhone和Arduino車庫門開啟器的制作圖解

454398 ? 來源:網絡整理 ? 作者:網絡整理 ? 2019-11-12 16:42 ? 次閱讀

步驟1:您需要的內容

我用于該項目的材料是:

以太網屏蔽的Arduino UNO :我的是用于Arduino的Vilros以太網R3,但是以太盾或等效設備應該沒問題

一個備用的Linksys路由器 :我用DD-WRT刷新了固件(自此以后,我將不介紹該步驟在線上有許多有關如何執行此操作的教程)用作WiFi中繼器橋。在Craigslist上找到一個。它們非常便宜

iPhone :我的是7顆

LED,330歐姆電阻器,面包板,跨接電纜 :用于調試

5V繼電器 :我從這里訂購了我的產品。從中國到達大約需要兩個星期。但是它們足夠便宜,因此訂購一堆

3D打印盒(可選) :存放電子設備

Xcode的副本 (Apple應用程序開發軟件)

第2步:設置調試硬件

首先,讓我們設置用于調試目的的硬件。我將Arduino和以太網屏蔽以及面包板臨時安裝在一個小平臺上。如圖所示,我插入了LED和電阻。如果您需要有關如何將LED連接到Arduino的更多詳細信息,本教程可能會有所幫助。但是這些教程的數量與彩虹的顏色一樣多,因此請選擇您喜歡的。最后,我將Arduino的以太網端口連接到路由器,然后通過USB電纜將Arduino插入筆記本電腦。就是這樣。

步驟3:編寫Arduino代碼

下一步是確定Arduino將如何執行我想要它做什么。最初,當用戶的iPhone首次連接到LAN時,Arduino應該傳達門的當前狀態。然后,Arduino會從用戶的iPhone接收命令來打開/關閉門,并更新Arduino代碼中的變量來跟蹤門的狀態。

我認為最好的方法是傳遞JSON(Java腳本對象表示法)消息。我喜歡它們,因為它們具有鍵值結構以及標頭信息。事實證明,如果您下載ArduinoJSON庫,則Arduino可以支持此功能。他們有許多有關如何與該庫進行交互的示例。您需要密切注意幾個使用這些類的示例:

EthernetServer

EthernetClient

DynamicsJsonBuffer

或者您可以看一下我的代碼以了解如何使用這些類中的函數。

loop()

p》

我也盡可能地在interwebz上尋找示例代碼。一個半相關的應用程序是用于Arduino和iPhone的溫度傳感器應用程序。這是一個非常完整的示例,其中包含很多很好的解釋和可下載的代碼。

好,所以接下來讓我傷腦筋的是我將Arduino用作 server 還是 client 。似乎當用戶最初連接時Arduino應該是服務器,因為它正在為iPhone的初始門狀態提供服務。另外,當Arduino從iPhone接收命令時,我認為它應該是客戶端,因為它被動地接收數據。

事實證明,在兩種情況下,使Arduino成為服務器都是可行的。代碼的本質分解方式在主要的Arduino

SendAndReceiveJSONData()

調用中,我定義了一個名為

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/

的函數,該函數使Arduino成為服務器它會監聽所有客戶。如果找到一個,它將忽略客戶端的JSON頭信息(不重要),并嘗試解析數據。如果它找到可以解析的數據,則我們知道iPhone已向我們發送了有關門的狀態信息,Arduino會相應地更新這些變量。另一方面,如果我們找不到要解析的數據,那么我們知道這是用戶第一次連接(因此他不可能向我們發送有關門的任何信息),并且向他發送了一條JSON消息,通知他的門的當前狀態是什么。

如果我上面說的話似乎令人困惑,請告訴我,但您也可以在我的倉庫中查看代碼。

步驟4:在編寫iPhone代碼之前免責聲明

Apple 。..哦,Apple。 [提示重嘆] 。我曾經愛過蘋果。但是這個小雜物與這個討論無關。

Swift是用于在iPhone上設計應用程序的最新語言。伙計們,我真的不在乎。潮流似乎在改變,說實話,我什至不知道我在Xcode上安裝了哪個版本。此外,在查找示例/教程時,由于語言的更改速度很快,因此并非所有內容都相關。

現在,如果這還不夠糟糕,(我保證這會發生的話),我在編譯后發現了/構建我的XCode項目,使其不會在我的iPhone上加載。原因是因為我的機器很舊(2010年的MacBook Pro),所以我擁有的最高操作系統是10.11.6(El Capitan)。本質上,這意味著我無法在支持iPhone中最新iOS(11.1或11.2)的計算機上安裝最新的Xcode。該錯誤通過說出諸如“無法找到設備支持文件”之類的東西來體現。

事實證明,如果您遇到相同的問題,則可以通過修復來解決問題。將錯誤輸入Google會導致大量類似的解決方案。這是一個。結果是您需要下載最新版本的Xcode(這很重要,因此它不會自動安裝并隨后失敗),然后導航到:

PerformRestCall()

并復制所有這些您當前的Xcode版本沒有相同目錄的目錄。之后,重新啟動Xcode,并嘗試編譯等,它應該可以正常工作。

步驟5:編寫iPhone代碼

在控制版本問題的情況下,我不得不拼湊一些資源來編寫應用程序,我不想花一個月學習Swift。話雖如此,我確實發現與Chris一起合作的Code是非常好的資源和時間投入。他的教程特別出色,因為它向您展示了如何實現觸摸屏功能以及 Main.Storyboard 與實際代碼之間的交互。特別是在最近的一些教程中。因此,我真的鼓勵您在開始使用Xcoding之前先觀看它們。另外,我和其他人一樣,尋找相似的Swift實例,并嘗試向他們學習。我不是Swift專家,但我找到了我需要的東西。

該應用的背后想法是設計自定義的 Open 和 Close 觸摸按鈕您擁有的任何繪畫應用程序都可以按預期運行。當應用首次啟動時,它會使用一個名為

handleResultsOfWebCall()

的函數,該函數隨后會調用:

leftOpenImageTapped()

leftClosedImageTapped()

rightOpenImageTapped()

rightClosedImageTapped()

,該函數實際上是繁重的工作并解析來自Arduino的初始JSON數據描述了門的當前狀態。

我使用的其他功能是:

CreateJSONMessage()

,它們在被調用時會更新門的當前狀態。門,然后調用函數:

實際創建要發送到Arduino的必要JSON。

有關更多詳細信息,您可以在此處看到該項目的代碼,由于我試圖對其進行合理地注釋,因此該代碼應進行更多說明。老實說,我有點把它砍在一起,以使其能夠完成我想要的工作。

在編寫代碼之后,我將其上傳到iPhone并開始調試。

第6步:調試

編寫我的代碼并將其上傳到Arduino和iPhone上,就該進行調試了。由于我還沒有將所有東西連接到車庫,因此我想以某種方式模仿它的行為。提示LED。

我拿起了兩個紅色和兩個綠色LED的鉤子,如上圖所示。一組綠色和紅色代表左門,其余代表右門。如果任一扇門關閉,則綠燈將不停閃爍。否則,如果任何門打開,則紅燈將閃爍。我選擇了要關閉的門的初始狀態(綠色閃爍的燈),因為當我第一次將Arduino連接到開門器時,我將確保門已關閉。

看看它如何可以,您可以觀看正在播放的簡短視頻(糟糕透頂-對不起!)。瞧!到目前為止可以正常工作!

步驟7:連接

自從維修了3D打印機以來,我還沒有機會打印箱子。我以此為基礎的先前說明,具有可供下載的.stl文件。(注意:如果您打算使用.stl文件,則單位以厘米為單位,與作者相對應。我不得不縮放我的.stl文件的大小是原來的10倍,因為我的打印機以毫米為單位工作。我必須修改設計,因為我有兩個門,因此需要兩個繼電器。但是由于我渴望將所有東西都連接起來,所以我開始將電子設備安裝在我躺在的一塊廢舊木頭上。因此,我不會在這種指導中展示絕對的成品。

一旦將電子設備安裝到我擁有的木頭上,在其上找到臨時住所就很簡單了。壁。在圖片中,您可以看到從路由器到Arduino,從Arduino到繼電器,再到繼電器到車庫門按鈕的電線。當我彈出實際按鈕并從墻上擰下外殼時,只有兩個接線端子。因此,就像我以前作為基礎的指導一樣,您可以按任意順序將繼電器的電線鉤到門按鈕上的端子上。

在此之后,整個設置第一次神奇地起作用了!抱歉,不發布視頻。我必須暫時將其取下來,然后才能捕獲它的視頻,但我發誓確實如此!

步驟8:最終想法

之后玩了一點,我確實注意到了一些問題,我將在下面提到。這些是很重要的,因此在決定重復該項目之前,請先考慮它們。

按下iPhone上的按鈕與讓車庫門響應之間存在一些不一致的延遲。

一個大問題:將應用程序加載到iPhone應用程序后,我注意到幾天后我試圖打開該應用程序。應用程序,它只會返回主屏幕。這是一致的行為。掙扎了一段時間之后,我終于崩潰了,并在stackoverflow上發布了問題。一個人的答案似乎是正確的:邪惡的帝國使Apple決定,如果您不是開發人員,那么您從Xcode獲得的信任證書對您剛開發的應用程序僅有效1周。之后,除非您重新安裝它(并重置1周的倒計時),否則您將無法在iPhone上使用它,或者需要為更長的證書支付99美元的費用。我發現這完全令人沮喪。就像我浪費時間一樣。但是,如果您是開發人員,那么這對您來說就不是問題了。。

我想到的一個想法是,如果有人手動按下車庫門按鈕,則不會捕獲此事件在Arduino代碼中因此,就Arduino而言,在按下按鈕之前,門的狀態保持不變。此外,如果有人站在門底下,而另一個人正在使用該應用程序將其關閉。門傳感器將迫使門再次返回,并且此事件也未在Arduino代碼中捕獲。不用說,這是要弄清楚的另一點。

責任編輯:wv

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

    關注

    28

    文章

    13491

    瀏覽量

    202843
  • Arduino
    +關注

    關注

    188

    文章

    6478

    瀏覽量

    188275
收藏 人收藏

    評論

    相關推薦

    智能地下車庫照明系統

    ,通過傳感、物聯網通信、智能控制等技術,對車庫內照明設備的精準控制。按需照明,根據車庫內實際光線需求、車輛及人員活動情況自動調節照明亮度,既保證了行車與行人安全,又避免能源浪費,提升用戶體驗的同時,減少對
    的頭像 發表于 12-10 16:21 ?266次閱讀

    車載車庫信號探測:頂級評測,革新駕駛體驗

    深圳放大器|車載車庫信號探測:頂級評測,革新駕駛體驗
    的頭像 發表于 12-05 09:03 ?215次閱讀

    深圳特信探測 車載車庫GPS信號:打造無縫導航體驗

    深圳特信探測|車載車庫GPS信號:打造無縫導航體驗
    的頭像 發表于 11-05 09:03 ?307次閱讀

    車載車庫GPS信號:讓車庫導航從此不再迷路

    深圳特信放大器|車載車庫GPS信號:讓車庫導航從此不再迷路
    的頭像 發表于 10-21 09:10 ?409次閱讀

    車載車庫GPS信號探測:讓找車位與車庫不再難

    深圳特信放大器|車載車庫GPS信號探測:讓找車位與車庫不再難
    的頭像 發表于 10-08 09:07 ?350次閱讀

    深圳特信電子 車載車庫GPS信號探測:地下車庫也能夠精準定位

    深圳特信電子|車載車庫GPS信號探測:地下車庫也能夠精準定位
    的頭像 發表于 09-11 09:03 ?520次閱讀

    車載車庫GPS信號屏蔽:私密與安全的科技新寵

    深圳特信電子|車載車庫GPS信號屏蔽:私密與安全的科技新寵
    的頭像 發表于 07-11 10:34 ?579次閱讀

    車載車庫GPS信號探測:智能停車新選擇

    深圳特信屏蔽|車載車庫GPS信號探測:智能停車新選擇
    的頭像 發表于 07-08 08:55 ?461次閱讀

    車載車庫GPS信號屏蔽:如何確保您的車輛安全

    深圳特信電子|車載車庫GPS信號屏蔽:如何確保您的車輛安全
    的頭像 發表于 07-04 08:57 ?676次閱讀

    車載車庫GPS信號屏蔽:地下車庫信號穩定

    深圳特信電子|車載車庫GPS信號屏蔽:地下車庫信號穩定
    的頭像 發表于 06-21 08:53 ?683次閱讀

    車載車庫GPS信號屏蔽:如何保護隱私與安全

    深圳特信電子|車載車庫GPS信號屏蔽:如何保護隱私與安全
    的頭像 發表于 05-29 08:54 ?795次閱讀

    音箱制作過程圖解

    電子發燒友網站提供《音箱制作過程圖解.doc》資料免費下載
    發表于 04-28 09:27 ?11次下載

    如何用Arduino制作一個簡易自動喂魚

    如果你家里養有魚,并想找到一種自動化喂食的方法,這個項目可能會對你有所啟發。 在這個教程中,作者將展示如何制作自己的基于Arduino的自動喂魚,讓小魚不在餓肚子。 自動喂魚
    發表于 03-28 11:25

    ESP32-C3+智能車庫門應用方案 小尺寸低功耗

    以前的車庫門Opener只能通過墻壁開關或者遙控來控制開啟或關閉,超過一定距離的話無法通過遙控來操控車庫門,也無法隨時查看
    的頭像 發表于 03-27 08:03 ?759次閱讀
    ESP32-C3+智能<b class='flag-5'>車庫</b>門應用方案  小尺寸低功耗

    如何制作自己的Arduino電容計

    在這個項目中,您將學習如何制作自己的Arduino電容計(測量電容器的值,范圍從pF到1000的uF)。一般來說,電子愛好者喜歡設計自己的小工具而不是購買。在這個項目中,我們使用兩種電容測量方法,即
    的頭像 發表于 02-25 15:10 ?1785次閱讀
    如何<b class='flag-5'>制作</b>自己的<b class='flag-5'>Arduino</b>電容計
    主站蜘蛛池模板: 巨乳色在线观看 | 丁香婷婷开心激情深爱五月 | 国产精品超清大白屁股 | 国产免费午夜 | 黄色福利小视频 | 国产香蕉一区二区精品视频 | 午夜精品视频在线观看美女 | 国产三级黄色毛片 | toyota东热综合网 | 天堂电影在线观看免费入口 | 午夜小视频网站 | 色图综合网 | 天堂-bt种子| 午夜在线观看视频在线播放版 | 永久免费看的啪啪网站 | xyx性爽欧美视频 | 人人狠狠综合88综合久久 | 黄色网页在线观看 | 黄色录像视频网站 | 欧美黄色一级视频 | 亚洲综合一二三区 | 国产小视频免费观看 | 欧美影院一区 | 午夜在线| 成人久久久精品乱码一区二区三区 | 一区二区三区视频观看 | 天天在线天天在线天天影视 | 日本三级香港三级三级人!妇久 | 爱操综合网 | 九九福利 | 亚洲伦理一区二区 | 一本到卡二卡三卡视频 | 欧美精品区 | 天天干天天爽天天射 | 国产精品最新资源网 | 三级黄色在线视频 | 天天操夜夜摸 | 美女扒开尿口给男人桶 | 四虎成人精品在永久在线观看 | 国产精品igao在线观看樱花日本 | av网址在线看 |