
สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12

สวัสดีทุกคน นี่เป็นคำสั่งสอนครั้งแรกของฉัน หวังว่าฉันจะช่วยชุมชนผู้สร้างเพราะฉันได้รับประโยชน์จากมัน
บ่อยครั้งเราใช้เซ็นเซอร์ในโครงการของเรา แต่การหาวิธีรวบรวมข้อมูล จัดเก็บ และโอนไป โทรศัพท์หรืออุปกรณ์อื่นๆ ทันทีและไร้สายไม่ใช่กระบวนการสำเร็จรูป คำแนะนำนี้จะแนะนำคุณตลอด
- การรับข้อมูลจาก Sensor (DHT 11) - เซ็นเซอร์อุณหภูมิและความชื้น
- การจัดเก็บข้อมูลที่ได้รับในการ์ด SD ด้วยโมดูลการ์ด SD
- การถ่ายโอนข้อมูลแบบไร้สายโดยใช้ Bluetooth ไปยังแอพ Android ที่สร้างขึ้นเอง
- การจัดเก็บค่าเซ็นเซอร์ที่ได้รับเป็นไฟล์ข้อความ (ไฟล์.txt)
ขั้นตอนที่ 1: รายการส่วนประกอบ



ลงไปรวบรวมกำลังทหารเพื่อทำโครงการที่ยอดเยี่ยมนี้
- Arduino Uno (arduino อื่น ๆ ก็เหมาะสมเช่นกัน)
- โมดูลไมโคร SD การ์ด
- โมดูลการ์ด SD (อันที่ฉันใช้คือ 8 GB แนะนำให้ใช้ >=32 GB)
- HC05 - โมดูล Bluetooth
- DHT11 (เซ็นเซอร์อุณหภูมิและความชื้น)
- จัมเปอร์จำนวนมาก
- โทรศัพท์ Android
ขั้นตอนที่ 2: การเชื่อมต่อ:

การประกอบและเชื่อมต่อส่วนประกอบต่างๆ เสร็จสิ้นลงครึ่งหนึ่งสำหรับโครงการ ผลิตภัณฑ์ที่กล่าวถึงสามารถหาซื้อได้ง่ายในร้านค้าอิเล็กทรอนิกส์และเว็บไซต์ออนไลน์ส่วนใหญ่ เช่น Amazon
การเชื่อมต่อ Arduino - HC05 (บลูทูธ):
- +5V - Vcc
- Gnd - Gnd
- Pin 0 - Tx
- พิน 1 - Rx
Arduino - การเชื่อมต่อโมดูล SDcard:
- +5V - Vcc
- Gnd - Gnd
- พิน 11 - MOSI (Master Out Slave In)
- พิน 12 - MISO (Master In Slave Out)
- พิน 13 - SCk (นาฬิกาซิงโครนัส)
- พิน 4 - CS (เลือกชิป)
การเชื่อมต่อ Arduino - HC05 (บลูทูธ):
- +5V - Vcc
- Gnd - Gnd
- พิน A0 - สัญญาณ
ขั้นตอนที่ 3: ขั้นตอน

เชื่อมต่อทุกส่วนตามที่กล่าวไว้ในขั้นตอนที่แล้ว ด้วยวิธีนี้ เราสามารถเขียนโค้ดใน Arduino Ide เพื่อให้บรรลุเป้าหมาย
ส่วนที่สองของโครงการของเราคือการมีแอพ Android เพื่อรับค่าเซ็นเซอร์ แสดงค่าและเก็บไว้ในไฟล์ในมือถือ ฉันใช้ Thunkable เพื่อสร้างแอปพลิเคชัน Android และได้จัดเตรียม apk และ aia ไว้ด้วย
ขั้นตอนที่ 4: รหัส Arduino:
รหัส Arduino ได้รับและอธิบายไว้ด้านล่าง
รหัส Arduino ส่วนใหญ่อธิบายตนเองด้วยไลบรารีการ์ด SD และไลบรารี DHT11 บลูทู ธ ใช้ฮาร์ดแวร์อนุกรมซึ่งเป็น pin0 และ pin1 ของ Arduino ดังนั้นการถ่ายโอนบลูทู ธ เกิดขึ้นกับฟังก์ชัน Serial print () ซึ่งใช้โปรโตคอล I2C และโมดูลการ์ด SD ใช้โปรโตคอล SPI เพื่อสื่อสารกับมัน
/*
* การ์ด SD ที่แนบมากับบัส SPI ดังนี้:
** MOSI - พิน 11 ** MISO - พิน 12 ** CLK - พิน 13 ** CS - พิน 4 (สำหรับ MKRZero SD: SDCARD_SS_PIN) * * การเชื่อมต่อโมดูล HC 05: ** TX - พิน 0 (ค่าเริ่มต้น) [สามารถเป็นได้ เปลี่ยนหากมีการใช้ Softwareserial] ** RX - pin 1 (ค่าเริ่มต้น) [สามารถเปลี่ยนแปลงได้หาก Softwareserial กำลังใช้งาน]
*/
#รวม
#รวม #รวม
ไฟล์ myFile;
ดีเอชที ดีเอชที; #define DHT11_PIN A0
การตั้งค่าเป็นโมฆะ () {
// เปิดการสื่อสารแบบอนุกรมและรอให้พอร์ตเปิด: Serial.begin(9600); Serial.println("ประเภท \tStatus, \tHumidity(%), \tTemperature(C)"); ในขณะที่ (!Serial) {; // รอให้พอร์ตอนุกรมเชื่อมต่อ จำเป็นสำหรับพอร์ต USB ดั้งเดิมเท่านั้น } DHTAcq(); sdCardWrite("test3.txt"); sdCardRead("test3.txt");
}
เป็นโมฆะ DHTAcq()
{ Serial.println("DHT11, \t"); int chk = DHT.read11(DHT11_PIN); Serial.print(DHT.ความชื้น 1); Serial.print(", \t"); Serial.print(DHT.อุณหภูมิ 1); ล่าช้า (2000); }
ถือเป็นโมฆะ sdCardWrite (สตริง fileNameStr)
{ Serial.println ("กำลังเตรียมใช้งานการ์ด SD"); ถ้า (!SD.begin (4)) { Serial.println ("การเริ่มต้นล้มเหลว"); กลับ; } Serial.println("เริ่มต้นเสร็จแล้ว!"); // เปิดไฟล์. โปรดทราบว่าสามารถเปิดไฟล์ได้ครั้งละหนึ่งไฟล์เท่านั้น // ดังนั้น คุณต้องปิดไฟล์นี้ก่อนที่จะเปิดไฟล์อื่น myFile = SD.open (fileNameStr, FILE_WRITE); // ถ้าไฟล์เปิดได้ ให้เขียนไปที่ if (myFile) { myFile.println("DHT11, \t"); int chk = DHT.read11(DHT11_PIN); myFile.print(DHT.ความชื้น 1); myFile.print(", \t"); myFile.print(DHT.อุณหภูมิ 1); myFile.close(); Serial.println("เสร็จสิ้น!"); ล่าช้า(200); /*Serial.print("กำลังเขียน test.txt…"); myFile.println("กำลังทดสอบ 1, 2, 3."); // ปิดไฟล์: myFile.close(); Serial.println("เสร็จสิ้น"); */ } else { // หากไฟล์ไม่เปิดขึ้น ให้พิมพ์ข้อผิดพลาด: Serial.println ("ข้อผิดพลาดในการเปิด test.txt"); } }
ถือเป็นโมฆะ sdCardRead (ชื่อไฟล์สตริง)
{ // เปิดไฟล์เพื่ออ่านอีกครั้ง: myFile = SD.open(fileName); ถ้า (myFile) { Serial.println ("test.txt:"); // อ่านจากไฟล์จนไม่มีอะไรอยู่ในนั้น: while (myFile.available()) { Serial.write(myFile.read()); } // ปิดไฟล์: myFile.close(); } อื่น { // หากไฟล์ไม่เปิดขึ้น ให้พิมพ์ข้อผิดพลาด: Serial.println ("ข้อผิดพลาดในการเปิด test.txt"); } }
วงเป็นโมฆะ () {
// ไม่มีอะไรเกิดขึ้นหลังจากตั้งค่า //Serial.println("test 1.. 2.. 3"); // ล่าช้า (1000); }
ขั้นตอนที่ 5: แอพ Android:


แอพ Android สร้างด้วยแอปพลิเคชั่น Thunkable พร้อมการเขียนโปรแกรมลากและวาง มันจะบันทึกข้อมูลลงบนฉลากบนหน้าจอและเมื่อกดปุ่ม Store Data ที่ตำแหน่ง AppInventor/Data ด้วยชื่อไฟล์ที่ได้รับรหัส
โปรเจ็กต์สามารถขยายเพื่อให้มีที่เก็บข้อมูลแบบออฟไลน์ของข้อมูลเซ็นเซอร์ที่เราต้องการโดยแทนที่ด้วยโมดูลเซ็นเซอร์ที่ต้องการ และสามารถขยายแอปเพื่อดึงข้อมูลจากที่จัดเก็บและจัดการเพื่อให้เหมาะกับแอปพลิเคชัน
แนะนำ:
การพล็อตกราฟแบบเรียลไทม์บน Android จาก Arduino ผ่าน HC-05: 3 ขั้นตอน

การพล็อตกราฟแบบเรียลไทม์บน Android จาก Arduino จนถึง HC-05: สวัสดี นี่คือบทแนะนำเกี่ยวกับวิธีการพล็อตกราฟค่าแบบเรียลไทม์จากไมโครคอนโทรลเลอร์ เช่น Arduino ไปยังแอป มันใช้โมดูล Bluetooth เช่น HC-05 เพื่อทำหน้าที่เป็นอุปกรณ์ส่งข้อความเพื่อส่งและรับข้อมูลระหว่าง Ar
ตั้งโปรแกรม Arduino ของคุณด้วยอุปกรณ์ Android ผ่าน Bluetooth: 6 ขั้นตอน (พร้อมรูปภาพ)

ตั้งโปรแกรม Arduino ของคุณด้วยอุปกรณ์ Android ผ่าน Bluetooth: สวัสดีชาวโลก ในคำแนะนำนี้ ฉันต้องการแสดงวิธีตั้งโปรแกรม Arduino Uno ของคุณด้วยอุปกรณ์ Android ผ่าน Bluetooth มันง่ายมากและราคาถูกมาก นอกจากนี้ยังช่วยให้เราสามารถตั้งโปรแกรม Arduino ได้ทุกที่ที่เราต้องการผ่านบลูทูธไร้สาย… ดังนั้น
ควบคุม Ws2812 Neopixel LED STRIP ผ่าน Bluetooth โดยใช้ Arduino Uno: 4 ขั้นตอน

ควบคุม Ws2812 Neopixel LED STRIP ผ่าน Bluetooth โดยใช้ Arduino Uno: สวัสดีทุกคนในคำแนะนำนี้เราจะเรียนรู้วิธีควบคุม neopixel ด้วย arduino โดยพื้นฐานแล้ว Arduino จะเชื่อมต่อผ่าน Bluetooth โดยใช้โมดูล Bluetooth hc05 กับสมาร์ทโฟน และสมาร์ทโฟนจะส่งคำสั่งเปลี่ยนสีของแถบนำนีโอพิกเซล
ระบบอัตโนมัติภายในบ้าน Bluetooth ผ่าน Android: 3 ขั้นตอน

ระบบอัตโนมัติในบ้านด้วย Bluetooth ผ่าน Android: การใช้ชีวิตในศตวรรษที่ 21 กำลังอยู่ในศตวรรษของระบบอัตโนมัติ อย่างไรก็ตาม ไม่ใช่ทุกคนที่มีความหรูหรานี้ ไม่ต้องกังวล! คำแนะนำนี้จะบอกคุณอย่างชัดเจนถึงวิธีการทำให้เครื่องใช้ของคุณเป็นอัตโนมัติเพื่อให้คุณสามารถเปิดหรือปิดได้เพียงแค่แตะปุ่ม
โรลลิ่งโรบอทพร้อม ESP32 Thing และไดรเวอร์ TB6612FNG ควบคุมโดย Android ผ่าน BLE: 11 ขั้นตอน

Rolling Robot พร้อม ESP32 Thing และ TB6612FNG Driver ควบคุมโดย Android Over BLE: สวัสดีทุกคน นี่เป็นคำสั่งแรกของฉัน หุ่นยนต์กลิ้ง (ชื่อเล่น Raidho - จากคาถาที่เกี่ยวข้องกับการเคลื่อนไหว) ตาม ESP32 Thing, TB6612 FNG และ BLE ส่วนหนึ่งที่อาจดูแปลกคือภาพถ่ายไม่ได้มาจากขั้นตอนการผลิต