เริ่มใช้งานครั้งแรก
แฟลชเฟิร์มแวร์
ทำที่หน้า Firmware & Flash — แฟลชผ่านเว็บได้เลย ไม่ต้องลง Arduino IDEต่อไฟ แล้วหา WiFi ชื่อ
เครื่องที่ยังไม่เคยตั้งค่าจะปล่อยฮอตสปอตให้เอง เชื่อมต่อด้วยมือถือ แล้วเปิดJK-BMS-Setuphttp://192.168.4.1(ปกติหน้าตั้งค่าจะเด้งขึ้นเอง)เลือก WiFi บ้าน แล้วกด Save
ตั้ง IP แบบ Fixed ได้ในหน้าเดียวกัน ถ้าต้องการให้ IP ไม่เปลี่ยน เครื่องจะรีสตาร์ตแล้วเข้าวง LANเปิดหน้าแดชบอร์ดที่ IP ของเครื่อง
ดู IP ได้จาก Serial Monitor หรือหน้ารายการอุปกรณ์ของเราเตอร์ เช่นhttp://192.168.1.50เลือกแหล่งข้อมูล RS485 หรือ Bluetooth
ที่ Settings → Data source ค่าเริ่มต้นคือ RS485 การเปลี่ยนโหมดจะรีสตาร์ตเครื่องหนึ่งครั้ง
ข้อจำกัดสูงสุด — RS485 vs Bluetooth
| หัวข้อ | RS485 / Modbus | Bluetooth (BLE) |
|---|---|---|
| จำนวน BMS สูงสุด | 15 แพ็ค ต่อ 1 บัส (address 1–15) | 3 แพ็ค เท่านั้น |
| ทำไมถึงจำกัดแค่นั้น | ใช้สายเส้นเดียวร่วมกัน วนถามทีละ address | BMS แต่ละตัวเป็นอุปกรณ์ BLE แยกกัน ESP32 ต่อพร้อมกันได้จำกัด |
| ความเร็วอัปเดต | ~1 แพ็ค/วินาที (ยิ่งหลายแพ็คยิ่งช้าลงตามสัดส่วน) | BMS ส่งมาเองทุก ~1 วินาที ต่อแพ็ค |
| ระยะ | ไกล 100+ เมตร ใช้สายคู่บิดเกลียว | ~10 เมตร ในที่โล่ง มีผนังกั้นจะสั้นลงมาก |
| ต้องมีอุปกรณ์เพิ่ม | โมดูล TTL-to-RS485 (MAX485 / MAX3485) | ไม่ต้อง ใช้ BLE ในตัว ESP32 |
| ตั้งค่า | ตั้ง address ที่ตัว BMS ให้ไม่ซ้ำกัน แล้วให้เครื่องสแกนเอง | ใส่ MAC address ของ BMS ทีละช่อง (มีปุ่มสแกนช่วยหา) |
| เหมาะกับ | ระบบหลายแพ็คถาวร ตู้ ESS ที่เดินสายได้ | ติดตั้งเร็ว 1–3 แพ็ค อยู่ใกล้กัน |
โหมด RS485 / Modbus (สูงสุด 15 แพ็ค)
ตั้งค่า
ตั้ง address ที่ BMS
ในแอป JK BMS ตั้งค่า Modbus address ให้แต่ละแพ็คไม่ซ้ำกัน เริ่มที่ 1 แพ็คที่ address ซ้ำกันจะชนกันและอ่านค่าไม่ได้ทั้งคู่ต่อสาย A/B ขนานกันทุกแพ็ค
ดูวงจรที่หน้า อุปกรณ์ & การต่อสาย ปลายบัสทั้งสองข้างควรมีตัวต้านทาน 120Ω ถ้าสายยาวเกิน 10 เมตรต่อไฟ — จบ
เครื่องสแกน address 1–15 ให้อัตโนมัติตอนบูต แพ็คที่ตอบจะถูกเพิ่มเข้ารายการทันที และค่าที่เลือกไว้จะถูกจำไว้ในหน่วยความจำถาวร
ปุ่มบนแดชบอร์ด
โหมด Bluetooth (สูงสุด 3 แพ็ค)
เปลี่ยนโหมดที่ Settings
เลือก Bluetooth BLE แล้วกด Save — เครื่องจะรีสตาร์ตกด “Scan for JK BMS”
เครื่องจะสแกน 5 วินาที แล้วแสดง MAC ของ BMS ที่เจอ กดที่รายการเพื่อใส่ในช่องว่างช่องแรกใส่ได้สูงสุด 3 MAC
ตั้งชื่อแต่ละแพ็คได้ในช่องถัดไป กด Save แล้วเครื่องจะรีสตาร์ตและเชื่อมต่อเองดูสถานะการเชื่อมต่อ
บนแดชบอร์ดจะบอกทีละช่องว่า streaming (ได้ข้อมูลแล้ว), connected, no data (ต่อติดแต่ยังไม่ส่ง) หรือ disconnected พร้อมค่า dBm
หน้าแดชบอร์ดบนเครื่อง
ส่วนบนสุด
แหล่งข้อมูลที่ใช้ · จำนวนแพ็คที่ live · เวอร์ชัน FW · IP · Device Code · ลิงก์ดูออนไลน์ และแถบเขียวแจ้งเมื่อมีเฟิร์มแวร์ใหม่
การ์ดของแต่ละแพ็ค
แรงดันรวม · วงแหวน SOC · กระแส (ค่าลบ = จ่ายออก) · ป้าย Charge / Discharge / Balance / Runtime
ตารางค่า 16 ช่อง
กำลัง SOH ความจุคงเหลือ/เต็ม รอบชาร์จ Cycle Cap เฉลี่ยเซลล์ ผลต่างเซลล์ กระแสบาลานซ์ อุณหภูมิ MOS/T1–T5 และกระแสฮีตเตอร์
เซลล์รายก้อน
รูปแบตเตอรี่เติมตามระดับ (คำนวณจากเส้นโค้ง LFP) แรงดันและความต้านทานสายเป็นมิลลิโอห์ม เซลล์ต่ำสุดขอบแดง สูงสุดขอบน้ำเงิน
ค่าที่อ่านได้ทั้งหมด
| ค่า | หน่วย | ความหมาย |
|---|---|---|
| Total Voltage | V | แรงดันรวมทั้งแพ็ค |
| Current | A | บวก = กำลังชาร์จ, ลบ = กำลังจ่ายออก |
| Power | W | กำลังไฟฟ้าขณะนั้น |
| SOC | % | ระดับพลังงานคงเหลือที่ BMS คำนวณ |
| SOH | % | สุขภาพแบตเตอรี่เทียบกับตอนใหม่ |
| Remaining / Full Capacity | Ah | ความจุคงเหลือ และความจุเต็มที่วัดได้จริง |
| Cycle Count | รอบ | จำนวนรอบชาร์จสะสม |
| Cycle Capacity | Ah | ความจุสะสมที่ผ่านการชาร์จ/คายตลอดอายุ |
| Cell Voltage ×16 | V | แรงดันเซลล์รายก้อน |
| Wire Resistance ×16 | mΩ | ความต้านทานสายเซลล์ ค่าสูงผิดปกติ = จุดต่อหลวม |
| Average Cell / Cell Diff | V | ค่าเฉลี่ย และผลต่างสูงสุด–ต่ำสุด (ΔV) |
| Balance Current / Status | A | กระแสและสถานะการบาลานซ์ |
| MOS Temp, T1–T5 | °C | อุณหภูมิ MOSFET และเซนเซอร์ในแพ็ค |
| Heating Current | A | กระแสแผ่นทำความร้อน (รุ่นที่มี) |
| Runtime | วัน/ชม. | เวลาที่ BMS ทำงานต่อเนื่อง |
| Charge / Discharge Enable | on/off | สถานะ MOSFET ชาร์จและคายประจุ |
| Alarms | ข้อความ | รหัสเตือน 22 แบบจาก BMS แปลเป็นชื่อแล้ว |
ค่าทั้งหมดนี้ถูกส่งขึ้น bmsgo.life ด้วย ดังนั้นหน้าเว็บสาธารณะจึงแสดงข้อมูลชุดเดียวกับที่เห็นบนเครื่อง
คลาวด์ & Device Code
Device Code คืออะไร
รหัสรูปแบบ BMS-XXXXXX สร้างจาก eFuse MAC ของชิป ESP32
เป็นค่าฮาร์ดแวร์ที่แก้ไม่ได้และไม่ซ้ำกัน ใช้เป็นตัวตนของเครื่องบนคลาวด์
แฟลชใหม่กี่ครั้งก็ได้รหัสเดิม ประวัติจึงต่อเนื่อง
ลิงก์ดูออนไลน์
เปิดดูได้ที่ https://bmsgo.life/<Device Code>
แชร์ให้ใครก็ได้โดยไม่ต้องเปิดพอร์ตเราเตอร์
มีปุ่มคัดลอกลิงก์อยู่บนหน้าอุปกรณ์
โทเคน
เครื่องสร้างโทเคนสุ่ม 128 บิตให้ตัวเองครั้งเดียวตอนบูตแรก เก็บถาวรและ แก้ไม่ได้ จากหน้าเว็บ ใช้ยืนยันว่าข้อมูลมาจากบอร์ดตัวจริง
ส่งบ่อยแค่ไหน
ค่าเริ่มต้น 30 วินาที ตั้งได้ต่ำสุด 10 วินาทีที่หน้า Settings ปิดการส่งขึ้นคลาวด์ได้ด้วยการติ๊กออก — เครื่องยังทำงานปกติในวง LAN
อัปเดตออนไลน์ (OTA)
v2.0.1 อัปเดตเฟิร์มแวร์ได้โดยไม่ต้องถอดสายไปต่อคอม
จอสัมผัส (รุ่น CYD)
บอร์ด ESP32-2432S028R มีหน้าจอ 2.8" ในตัว ใช้เฟิร์มแวร์คนละไฟล์
(cyd) แต่ฟังก์ชันหลังบ้านเหมือนกันทุกอย่าง
แก้ปัญหา
ต่อไฟแล้วไม่มีข้อมูลขึ้นเลย (RS485)
ไล่ตามลำดับนี้:
- สลับสาย A กับ B ที่โมดูล RS485 — ต่อกลับด้านเป็นสาเหตุอันดับหนึ่ง
- เช็คว่าตั้ง Modbus address ที่ BMS แล้ว และไม่ซ้ำกับแพ็คอื่น
- กด Auto-scan บนแดชบอร์ดเพื่อบังคับสแกนใหม่ทันที
- เช็คกราวด์ร่วมระหว่าง ESP32 กับ BMS
ใน v2.0.1 ถ้าไม่มีแพ็คไหนตอบ เครื่องจะสแกนซ้ำเองทุก 2 นาที ไม่ต้องคอยกดเอง