女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

電子發燒友App

硬聲App

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

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

3天內不再提示
電子發燒友網>電子資料下載>電子資料>InqSpeedRacer用于HotWheels基于網絡的電子測速儀

InqSpeedRacer用于HotWheels基于網絡的電子測速儀

2022-10-27 | zip | 0.06 MB | 次下載 | 免費

資料介紹

描述

InqSpeedRacer是用于 HotWheels? 的基于網絡電子測速儀。該項目是為學習運動物理主題的 8 年級科學課創建的。它也是創建InqPortal服務器的演示者,該服務器不僅服務于多個客戶端,而且客戶端可以連接到多個服務器。這可以很容易地用作家庭自動化的模板。創建多種InqPortal “服務器”,使用傳感器、繼電器和/或執行器來感知和控制環境。可以創建客戶端儀表板以連接到所有服務器并監視和控制所有服務器。作為基于瀏覽器的應用程序的客戶端可以在 Windows、Chromebook、AndroidLinux 和 Apple 設備上運行。

硬件模塊設計

這是一個相對較快的刻錄項目。我們想為學生制作六個,并且我們想為后代保留一個……說實話……以防我們不得不支持修復錯誤。我們不得不訂購零件。由于電子產品不是我們天生的強項之一,所以用“ Arduino photo diode ”這個短語搜索了大約三十分鐘” 想出一個可行的電路。30 分鐘后,我們為 10 個 ESP8266 WeMos 板、電阻紅外 LED 和紅外光電二極管訂購了足夠的零件。最后一個我不確定有多少帖子發誓他們是光電晶體管,另一半說是二極管。我決定讓我的狗再打一場。我所知道的是它們與 LED 的尺寸相同(5 毫米),并且它們有兩根電線,電路顯示使用兩根電線工作。我們試圖在硬件方面牢記 KISS 原則。大約三天后他們出現了,我們把它放在面包板上,原型軟件在大約三十分鐘后運行。這是我們每個單位使用的零件。

  • 1 WeMos ESP8266 D1 Mini – 我更喜歡這些尺寸和防彈 USB 和 3.3v 穩壓器。它們甚至可以由最古老、最便宜的 USB 微型交流適配器供電即使是 250 mW 的功率也足夠了。實際上,如果我們必須購買交流適配器,它的成本將超過InqSpeedRacer的其余部分
  • 2 個紅外 LED——我想我燒掉了其中的一些以獲得正確的限流電阻,因為賣家沒有提供或提供任何信息
  • 2 個紅外光電二極管 – 同上燃燒
  • 3 個電阻器 – (1) 100 Ω 和 (2) 180 Ω

總支出——每臺 InqSpeedRacerServer 不到 4 美元

poYBAGNYsQuAUtcPAB5Bbt3saJ4396.jpg
InqSpeedRacer 部分組裝在 3D 打印外殼內
?

3D打印房屋

pYYBAGNYsQ6AFjMOAAFZZIkxUe0870.png
InqSpeedRacer 服務器的 3D 打印機模型
?

原型是用透明的 ABS 制作的,但它傾向于打印半透明的,你看不到里面的零件。但它的內置藍色 LED 閃爍,拍出了令人驚嘆的畫面!其他設計特點包括

  • 低調
  • 有支架可以滑入軌道底部,以防止它被撞到。
  • 重量輕(< 19 克)– 足夠輕,即使在沒有支撐的下坡上,它也可以安裝,不會顯著改變軌道曲率。
pYYBAGNYsRaAHJJkAAs5SHsTLkg711.jpg
?

使用 InqPortal 的服務器軟件

服務器端軟件使用可在 Arduino IDE 庫管理器中輕松找到的InqPortal庫。該服務器的設計目的是讓開發人員不必弄亂任何 WiFi、WebServer 邏輯。他們可以專注于手頭的工作——速度陷阱。以下是有關服務器的一些詳細信息。

  • 完全注釋、完全基于 WiFi 網絡的服務器 Sketch 的行數只有 140 行。 其中只有十行與 Web 服務器有關。剩下的就是監控光電晶體管,執行時序計算和注釋。
  • 一輛車通過并向客戶端報告速度后,它會自動重置并準備下一輛車通過。
  • 與其他InqPortal示例不同,這個示例實際上在 loop() 方法中做了一些事情。它利用了完全運行時的環路頻率約為 100kHz。我用它來檢查光束是否被汽車擋住。我最初做了一個中斷版本,但代碼復雜性并沒有真正變得更好。這給出了 1/100, 000 秒的時間分辨率。這比我們向客戶報告的毫秒分辨率要好得多。

這是代碼,但請節省您的時間... InqSpeedRacer是您將InqPortal下載到您的 Arduino IDE 后包含的示例之一。這里只是為了讓您了解配置基于InqPortal的項目是多么容易。

#include 
// Works with InqPortal v5
// Can use NULL if you want to configure via InqPortal Admin 
// or hard code your router SSID and Password.
#define YOUR_SSID           NULL
#define YOUR_PW             NULL
#define DEFALUT_SSID        "InqSR"
#define VERSION             "3.0.0"
#define LED                 D4
#define PHOTO1              D1
#define PHOTO2              D2
#define LOG_LEVEL           1
#define CHK_FOR_RUN         50      // Check for a valid run (ms)
#define CHK_FOR_FAULT       1000    // Check to see if there is a fault (ms)
InqPortal svr;
// Published variables
float speed = 0;
u32 finish = 0;
// Working Variables (not published)
u32 tPhoto1Blocked, tPhoto1Unblocked, tPhoto2Blocked, tPhoto2Unblocked;
bool blockage = false; // To detect a continuous blockage and flash LED slowly.
void setup() 
{
   // Set up Interval callbacks
   svr.onInterval(checkForRun, CHK_FOR_RUN);
   svr.onInterval(checkForFault, PAUSE);
   // Publish runtime and persisted variables
   svr.publishRO("V", VERSION, sizeof(VERSION), "InqSpeedRacer Version");
   svr.publishRO("S", &speed, "Speed (m/s)");
   svr.publishRO("F", &finish, "Finish (ms)");
   svr.publishRO("T", NULL, "Server time (ms)", 
       []()->u32 { return millis(); });
   svr.autoSend(0);
   // Start the InqPortal server.
   svr.begin(DEFALUT_SSID, NULL, YOUR_SSID, YOUR_PW); 
   pinMode(LED, OUTPUT);
   pinMode(PHOTO1, INPUT_PULLUP);
   pinMode(PHOTO2, INPUT_PULLUP);  
   clear();
}
#define isBlocked(p) digitalRead(p)
#define LED_TOGGLE digitalWrite(LED, !digitalRead(LED))
#define LED_OFF digitalWrite(LED, true)
void loop() 
{
   // Sensor 1
   if (!tPhoto1Blocked)
   {
       if (isBlocked(PHOTO1))
       {
           tPhoto1Blocked = micros();
           set();
       }
   }
   else if (!tPhoto1Unblocked)
   {
       if (!isBlocked(PHOTO1))
           tPhoto1Unblocked = micros();
   }
   // Sensor 2
   if (!tPhoto2Blocked)
   {
       if (isBlocked(PHOTO2))
       {
           tPhoto2Blocked = micros();
           set();
       }
   }
   else if (!tPhoto2Unblocked)
   {
       if (!isBlocked(PHOTO2))
           tPhoto2Unblocked = micros();
   }
}
void set()
{
   svr.onInterval(checkForFault, CHK_FOR_FAULT);
   blockage = true;
   if (!finish)
       finish = millis();
   LED_OFF;
}
void clear()
{
   tPhoto1Blocked  = 0;
   tPhoto1Unblocked = 0;
   tPhoto2Blocked  = 0;
   tPhoto2Unblocked = 0;
   finish = 0;
   svr.onInterval(checkForFault, PAUSE);
   blockage = false;
}
void checkForRun(void*)
{
   if (!blockage)
       LED_TOGGLE;
   if (tPhoto1Blocked && tPhoto1Unblocked && 
       tPhoto2Blocked && tPhoto2Unblocked)
   {
       // WARNING - Don't mess with this.  Needed to handle wrapping
       // of the u32 coming from the micros()!!
       s32 t = (abs((s32)(tPhoto1Blocked - tPhoto2Blocked)) + 
                abs((s32)(tPhoto2Unblocked - tPhoto1Unblocked))) / 2;
       // This does the speed calculation based on the distance
       // between the two sensors of 19.7 mm and time in micro seconds.
       speed = 19700.0 / (float)t;   // m/s
       // Sends it out the the clients.
       svr.send("lflu", "S", speed, "F", finish);
       clear();
   }
}
void checkForFault(void*)
{
   // We added this in case we have false trigger.  After duration  
   // of CHK_FOR_FAULT (ms), it will clear out the times.
   // This checks if its still blocked... then we know something
   // is in the way.  We blink slowly.
   blockage = isBlocked(PHOTO1) | isBlocked(PHOTO2);     // Still blocked?
   if (blockage)
       LED_TOGGLE;
   else
   {
       svr.LOG(LOG_LEVEL, "Fault detected and cleared\n");
       clear();  
   }
}

使用 JavaScript 和 InqPortal 的客戶端軟件

客戶端有兩個應用程序(網頁),JavaScript 編碼實際上比服務器端編碼長,分別為 105 和 240 行。第一頁簡單地報告了所有汽車速度的運行記錄。它顯示實際速度和假設 HotWheels 為 1:64 比例的比例速度。它還做了一些物理操作,并使用 KE = PE 估計掉落汽車的原始高度。單位可以從 mph 更改為 kph 和任何比例因子。

從開發人員的角度和家庭自動化的角度來看,第二頁在技術上更有趣。InqPortal有能力編寫一個可以與多個InqPortal服務器對話的客戶端。服務器不必是同一個項目。家庭自動化的優勢很簡單……您可以擁有一個儀表板,連接所有各種設備,并從一個客戶端檢索和控制所有內容……而且由于它是基于瀏覽器的,它可以在 Windows、Android、蘋果和 Linux。在此示例中,我們將其設置為連接到多個InqSpeedRacer服務器充當終點線......就像松木德比。代碼有點復雜,不是因為多服務器訪問,而是因為客戶端必須標準化所有服務器時鐘,以便它可以比較汽車穿過各個服務器“終點線”的時間。

poYBAGNYsR2AVeYrAAFvgdpXXBk961.png
多服務器連接充當終點線裁判
?

開始...

... 構建您自己的InqSpeedRacer ,您首先需要在您的 Arduino IDE 庫管理器中下載InqPortal庫。它將包含示例中所有必要的服務器和客戶端文件的完整副本。有關該項目的更多詳細信息,請訪問InqSpeedRacer 有關InqPortal庫的更多詳細信息,您可以查看我的其他 Project Hub 項目使用 3 行代碼制作 WebServer! 完整的交叉參考手冊和教程可以在InqOnThat.com/InqPortal/上找到


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

評論

查看更多

下載排行

本周

  1. 1DD3118電路圖紙資料
  2. 0.08 MB   |  1次下載  |  免費
  3. 2AD庫封裝庫安裝教程
  4. 0.49 MB   |  1次下載  |  免費
  5. 3PC6206 300mA低功耗低壓差線性穩壓器中文資料
  6. 1.12 MB   |  1次下載  |  免費
  7. 4網絡安全從業者入門指南
  8. 2.91 MB   |  1次下載  |  免費
  9. 5DS-CS3A P00-CN-V3
  10. 618.05 KB  |  1次下載  |  免費
  11. 6海川SM5701規格書
  12. 1.48 MB  |  次下載  |  免費
  13. 7H20PR5電磁爐IGBT功率管規格書
  14. 1.68 MB   |  次下載  |  1 積分
  15. 8IP防護等級說明
  16. 0.08 MB   |  次下載  |  免費

本月

  1. 1貼片三極管上的印字與真實名稱的對照表詳細說明
  2. 0.50 MB   |  103次下載  |  1 積分
  3. 2涂鴉各WiFi模塊原理圖加PCB封裝
  4. 11.75 MB   |  89次下載  |  1 積分
  5. 3錦銳科技CA51F2 SDK開發包
  6. 24.06 MB   |  43次下載  |  1 積分
  7. 4錦銳CA51F005 SDK開發包
  8. 19.47 MB   |  19次下載  |  1 積分
  9. 5PCB的EMC設計指南
  10. 2.47 MB   |  16次下載  |  1 積分
  11. 6HC05藍牙原理圖加PCB
  12. 15.76 MB   |  13次下載  |  1 積分
  13. 7802.11_Wireless_Networks
  14. 4.17 MB   |  12次下載  |  免費
  15. 8蘋果iphone 11電路原理圖
  16. 4.98 MB   |  6次下載  |  2 積分

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935127次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
  4. 1.48MB  |  420064次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233089次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費下載
  8. 340992  |  191390次下載  |  10 積分
  9. 5十天學會AVR單片機與C語言視頻教程 下載
  10. 158M  |  183342次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81588次下載  |  10 積分
  13. 7Keil工具MDK-Arm免費下載
  14. 0.02 MB  |  73815次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65989次下載  |  10 積分