โปรเจกต์ IoT สาย Health Tech:
ระบบตู้ยา 20ช่อง สั่งงานผ่าน Web API สำหรับ เอาไป พัฒนา เชื่อมต่อ ระบบ กับ HIS อื่นๆ ใ 🚀🤖
เบื้องหลังระบบ Smart Medication Cart ที่ไม่ใช่แค่ตู้เก็บยา แต่คือระบบจัดการอัจฉริยะที่ Flexible สุดๆ!
| Endpoint | วิธีใช้ | ความหมาย |
|---|
| GET / | เปิดในเบราว์เซอร์ | หน้าเว็บควบคุม (Dashboard) |
| GET /toggle?drawer=N | N = 0–1 | เปิดลิ้นชักที่ N (ลิ้นชักที่ 1 = 0, ที่ 20 = 19) |
| GET /openAll | เรียกครั้งเดียว | เปิดทุกลิ้นชักตามลำดับที่ firmware กำหนด |
| GET /getStatus | เรียกแล้ว parse JSON | สถานะลิ้นชัก 20 ตัว + จำนวนครั้งเปิด + เวลาเปิดล่าสุด + uptime |
| GET /getIP | เรียกได้เลย | ได้ IP ของ ESP32 (ข้อความล้วน) |
| GET /getSystemInfo | เรียกแล้ว parse JSON | อุณหภูมิ, RAM, WiFi (RSSI), แรงดัแบต, Chip, Flash, IP |
| GET /rese | เรียกเมื่อต้องการรีเซ็ต | ESP32 จะ restart ทันที |
🛠 Features:
Central Control: คุมได้ 20 ช่อง ผ่านหน้าเว็บ Responsive
Auto Connect: มี WiFiManager ไม่ต้อง Flash โค้ดใหม่เมื่อย้ายที่
API Integration: มี Endpoints (/togge, /openAll) พร้อมคุยกับ Server โรงพยาบาล
Hardware: รองรับทั้ง Relay, Servo, Solenoid และขยาย Port ได้ด้วย I2C Multiplexer
Reliability: ออกแบบระบบไฟแยก (External Power) พร้อม Protection ป้องกันระบบรวน
🛠 Key Features ที่เราจัดเต็ม:
✅ Central Control: คุมได้ 20 ช่อง ผ่านหน้าเว็บ Responsive พร้อมระบบสแกนปลดล็อก (Barcode/QR)
✅ HIS Integration: ดึงข้อมูลผู้ป่วย, รูปถ่าย, ประวัติการแพ้ยา มาแสดงบน Tablet ทันที
✅ Safety First: ระบบล็อกไฟฟ้า + ไฟ LED ระบุช่องยา หมดปัญหาหยิบยาผิดคน
✅ Environmental Control: เซนเซอร์วัดอุณหภูมิ/ความชื้นในตู้ มั่นใจในคุณภาพยาก่อนถึงมือคนไข้
✅ Telegram Alert: แจ้งเตือนทันทีเมื่อแบตต่ำ, ลืมปิดลิ้นชัก หรืออุณหภูมิผิดปกติ
✅ Mobility: แบตเตอรี่อึด ใช้งานต่อเนื่องได้ 3 วัน Standby ได้ถึง 7 วัน!
💡 Next Step: เตรียมเพิ่มระบบ Barcode Scanner และ Authentication เพื่อความปลอดภัยขั้นสุด!
#ESP32 #IoT #Developer #SmartDevice #ArduinoProject #HealthcareInnovation
1. การเชื่อมต่อระบบข้อมูลโรงพยาบาล (Connectivity & Integration) ต่างจากตู้ยาปกติที่เป็นเพียงที่เก็บของ รถเข็นนี้ทำงานเป็นเหมือนคอมพิวเตอร์เคลื่อนที่:
• เชื่อมต่อ HIS: สามารถเชื่อมต่อกับระบบสารสนเทศของโรงพยาบาล เพื่อดึงข้อมูลผู้ป่วย, รายการยา, และแผนการรักษามาแสดงบนหน้าจอแท็บเล็ตได้ทันที
• แสดงข้อมูลผู้ป่วย: หน้าจอจะแสดงรายละเอียดสำคัญ เช่น ชื่อ-นามสกุล, รูปถ่าย, เลข HN/AN, เลขเตียง, สิทธิการรักษา และ ประวัติการแพ้ยา ของผู้ป่วยแต่ละราย ช่วยให้พยาบาลตรวจสอบก่อนจ่ายยาได้
2. ระบบความปลอดภัยและการยืนยันตัวตน (Safety & Verification)
• สแกนเพื่อปลดล็อก: ใช้ระบบสแกน Barcode หรือ QR Code (จากป้ายข้อมือผู้ป่วยหรือซองยา) เพื่อสั่งเปิดลิ้นชักยา ซึ่งช่วยป้องกันความผิดพลาดจากการหยิบยาผิดคนหรือผิดชนิด (Human Error)
• ล็อกไฟฟ้า: ลิ้นชัก (Cassette) มีระบบล็อกไฟฟ้าที่จะปลดล็อกเฉพาะเมื่อมีการยืนยันตัวตนหรือคำสั่งที่ถูกต้องเท่านั้น ต่างจากตู้ปกติที่อาจใช้กุญแจไขรวม
3. ระบบช่วยนำทางและระบุตำแหน่ง (Guidance System)
• ไฟ LED ระบุช่อง: มีหลอดไฟ LED หน้าลิ้นชักทุกช่องเพื่อแสดงสถานะ ทำให้พยาบาลทราบทันทีว่าต้องหยิบยาจากช่องไหนสำหรับผู้ป่วยรายนั้นๆ
4. การบันทึกและตรวจสอบย้อนหลัง (Digital Logging & Auditing)
• บันทึกเวลาจ่ายยา: ระบบจะบันทึกข้อมูลการจ่ายยาว่าจ่ายไปตอนกี่โมง หากจ่ายยาไม่ตรงตามเวลาที่กำหนด ระบบจะรองรับการระบุเหตุผลประกอบได้
• ประวัติย้อนหลัง: สามารถเรียกดูข้อมูลการได้รับยาและประวัติยาของผู้ป่วยย้อนหลังได้ผ่านหน้าจอ
5. การควบคุมสภาพแวดล้อม (Environmental Control)
• วัดอุณหภูมิ/ความชื้น: มีระบบเซนเซอร์แสดงและบันทึกค่าอุณหภูมิและความชื้นภายในตู้ยา เพื่อให้มั่นใจว่ายาถูกเก็บรักษาในสภาวะที่เหมาะสม
6. การบริหารจัดการพลังงานและโครงสร้าง
• แบตเตอรี่ในตัว: ออกแบบมาให้เคลื่อนย้ายได้สะดวกโดยมีแบตเตอรี่สำรองไฟ สามารถใช้งานต่อเนื่องได้หลายวัน (สเปกระบุไว้ว่าใช้งานต่อเนื่องได้อย่างน้อย 3 วัน และ Standby ได้ 7 วัน) โดยไม่ต้องเสียบปลั๊กตลอดเวลา
• วัสดุ: ผลิตจากวัสดุที่ทนทานอย่าง Aluminum หรือ Plastic ABS และมีระบบล็อกล้อทั้ง 4 ล้อ
ฟีเจอร์การแจ้งเตือนผ่าน Telegram ที่ครอบคลุมเหตุการณ์สำคัญต่างๆ และมีประเด็นเรื่องความปลอดภัยที่ควรทราบ ดังนี้ครับ
1. ฟีเจอร์การแจ้งเตือนผ่าน Telegram
ระบบจะส่งข้อความแจ้งเตือนไปยังแชทที่คุณตั้งค่าไว้ โดยแบ่งเป็น 4 กรณีหลัก ดังนี้:
• แจ้งเตือนเมื่อระบบเริ่มทำงาน (System Online):
◦ เมื่ออุปกรณ์เชื่อมต่อ WiFi สำเร็จ จะส่งข้อความแจ้งว่า "ออนไลน์ พร้อมใช้งาน"
◦ ข้อมูลที่ส่งประกอบด้วย: IP Address, ลิงก์เข้า Dashboard, อุณหภูมิ/ความชื้นปัจจุบัน, ความแรงสัญญาณ WiFi (RSSI), ระดับแบตเตอรี่, และจำนวนลิ้นชักที่เปิดอยู่
• แจ้งเตือนอุณหภูมิและความชื้นผิดปกติ:
◦ คุณสามารถตั้งค่าช่วงที่ปลอดภัย (Min/Max) ได้ในหน้า Config
◦ หากค่า เกิน หรือ ต่ำกว่า ที่กำหนด ระบบจะส่งข้อความแจ้งเตือน เช่น "[ตู้ยา] อุณหภูมิสูงเกิน: 32.0 °C"
◦ มีระบบหน่วงเวลา (Cooldown) เพื่อไม่ให้แจ้งเตือนซ้ำถี่เกินไป (ค่าเริ่มต้นคือ 10 นาที)
• แจ้งเตือนการลืมปิดลิ้นชัก (Drawer Open Alert):
◦ หากลิ้นชักช่องใดถูกเปิดทิ้งไว้นานเกินเวลาที่กำหนด (ค่าเริ่มต้น 10 นาที) ระบบจะแจ้งเตือนระบุช่องที่เปิด เช่น "[ตู้ยา] ลิ้นชักช่อง 5 เปิดทิ้งไว้นานเกิน 10 นาที"
• แจ้งเตือนแบตเตอรี่ต่ำ (Low Battery):
◦ หากมีการต่อวงจรวัดแบตเตอรี่และแรงดันลดต่ำกว่าค่าที่ตั้งไว้ (เช่น 3.2V) ระบบจะแจ้งเตือนให้ทราบก่อนที่เครื่องจะดับ
โดยสรุปคือ รถเข็นนี้เปลี่ยนจากการเป็นแค่ "ที่เก็บยา" มาเป็น "ระบบบริหารจัดการยา" ที่ช่วยตรวจสอบความถูกต้อง (Right Patient, Right Drug, Right Time) ได้อย่างเป็นระบบครับ
สามารถ พัฒนาต่อยอดเป็น หุ่นยนต์ ไห้วิ่งไปกลับ ห้องต่างๆเองใด้