ค่าไฟพื้นฐาน (Raw Cost):
TOU: OnCost = On_kWh × (OnRate + Ft) × 1.07
OffCost = (Off_kWh × (OffRate + Ft) + ServiceFee ÷ 30.4) × 1.07
ก่อนเริ่ม TOU: FlatCost = (Import_kWh × (FlatRate + Ft) + ServiceFee ÷ 30.4) × 1.07
ตัวอย่าง: On 10 kWh → 10 × (5.7982 + 0.0972) × 1.07 = ฿63.08
Off 20 kWh → (20 × (2.6369 + 0.0972) + 24.62 ÷ 30.4) × 1.07 = ฿59.06
ถ้ายังไม่ถึงวันเริ่ม TOU ระบบใช้ FlatCost ทั้งวัน แม้กรอกในช่อง off-peak เพื่อเก็บข้อมูลรอบก่อน TOU
วัน Off-peak ทั้งวัน = เสาร์–อาทิตย์ + วันหยุดราชการตามประกาศ กกพ./MEA (ไม่รวมวันหยุดชดเชย วันพืชมงคล และวันหยุดพิเศษ ครม.)
kWh ที่โชว์ยังเป็นค่าจาก inverter; เฉพาะค่าเงินบาทที่มี * จะถูก override หรือ apply K-Factor
ค่าไฟก่อนมี Solar (No-solar baseline):
MonthLoad = Load เฉลี่ย/วัน × จำนวนวันในรอบบิล
EnergyCost = 150 หน่วยแรก × T1 + 151–400 × T2 + ส่วนเกิน 400 × Flat (อัตราก้าวหน้า ประเภท 1.1.2)
FullCost/day = (Load_kWh × (EnergyCost ÷ MonthLoad + Ft) + ServiceFee ÷ วันในรอบ) × 1.07
Saving/day = max(0, FullCost/day − ActualCost/day)
ตัวอย่าง: Load 20 kWh/วัน รอบ 31 วัน = 620 หน่วย → เฉลี่ย ฿4.0572/หน่วย
(20 × (4.0572 + 0.0972) + 24.62 ÷ 31) × 1.07 = ฿89.75/วัน
ถ้าวันนั้นค่าไฟจริงหลัง solar = ฿35 → ประหยัด = ฿54.75/วัน
ROI / จุดคุ้มทุน:
Investment = SolarCost + TOUCost − (TaxDeduction × อัตราภาษีขั้นสูงสุด)
Saving/day = ค่าเฉลี่ยของ (Baseline − ค่าไฟจริง) จากวันเต็ม ไม่เกิน 365 วันล่าสุด
Payback (ไม่คิดลด) = Investment ÷ (Saving/day × 30.4) เดือน
Payback (คิดลด) = เดือนแรกที่ Σ Saving/เดือน × (1+g)m × (1−d)m ÷ (1+r)m ≥ Investment
r = อัตราคิดลด/เงินเฟ้อ · g = ค่าไฟขึ้น · d = แผงเสื่อม (แปลงเป็นรายเดือน)
ตัวอย่าง: 209,000 + 3,350 − 60,000 × 20% = ฿200,350 และ Saving ฿80/วัน
Payback = 200,350 ÷ (80 × 365) ≈ 6.9 ปี (ก่อนคิดลด)
ยังไม่รวมค่าเปลี่ยน inverter/แบตในอนาคต · รายการ “ก่อน vs หลังติด solar” ใช้บิลจริง/ฐานย้อนหลังถ้ามีข้อมูล
🔮 Simulation: + ติด Optimizer
RecoverableWh = max(0, min(max(PV1, PV2) × 2, InverterW) − SolarW) × Δt
OptimizerWh = RecoverableWh × 50%
GridImportWh = ส่วนต่างของตัวนับ Daily Energy Purchased แยกช่วง 09:00–22:00 / นอกช่วง
Saving = min(OptimizerWh, GridImportWh) × ค่าไฟช่วงเวลานั้น (รวม Ft, VAT)
ตัวอย่าง: ถ้า recoverable 4 kWh/วัน → ใช้ได้จริง 2 kWh
และแทนไฟ on-peak ฿6.31/kWh ได้ → 2 × 6.31 × 30.4 = ฿384/เดือน
🔮 Simulation: + ขายไฟให้ MEA
SellValue/day = (Export_kWh + EstimatedClipping_kWh) × SellRate
PaybackWithSell = Investment ÷ (Saving/year + SellValue/year)
ตัวอย่าง: Export+clip 3 kWh/วัน, SellRate ฿2.20/kWh
SellValue/year = 3 × 2.20 × 365 = ฿2,409/ปี
ค่าที่โชว์คือ “จุดคุ้มทุนใหม่” ถ้าขายไฟได้ ไม่ใช่เงินประหยัดต่อเดือน
🔮 Simulation: + แบตเตอรี่ 10 → 16 kWh
ExtraUsable = (16 − Battery_kWh) × (1 − Battery empty%)
Storeable = min(Export_kWh + Clipping_kWh, ExtraUsable) × 90% (round-trip)
วัน TOU ทำงาน: ใช้แทน On-peak ก่อน แล้วค่อย Off-peak · วันหยุด/ก่อน TOU: แทน Off-peak/Flat
ตัวอย่าง: แบต 10.24 kWh, empty 21% → ExtraUsable 4.55 kWh · Export+clip 3 kWh
min(3, 4.55) × 90% = 2.7 kWh × (5.7982+0.0972) × 1.07 = ฿17.03/วัน
ข้อนี้เป็น simulation หยาบ เพราะยังไม่ได้จำลอง SOC รายชั่วโมงของแบตก้อนใหม่จริง
Potential P90 & Clipping:
Potential P90 = กำลังผลิตระดับ Percentile 90 ของแต่ละชั่วโมง จากข้อมูลวันเต็มทั้งหมดที่มี (คำนวณครั้งเดียวต่อรอบ แล้วทุก tab ใช้ค่าเดียวกัน)
ClippingWh = min(max(0, P90 − ActualSolar), 1.5 kW) × Δt และจำกัดทั้งวันไม่เกิน 5 kWh
นับเฉพาะช่วงที่แบตเต็ม (SOC ≥ 95% และไม่ชาร์จ) หรือแบตชาร์จชนลิมิต (Max Charge A) — กันวันเมฆมากถูกนับเป็น clipping
ขายไฟ(if) = Export จริง + Clipping
ตัวอย่าง: P90 4.8 kW, ผลิตจริง 3.6 kW นาน 30 นาที
Clipping = min(1.2, 1.5) × 0.5 = 0.6 kWh
Battery Cycle (EFC):
EFC/day = (Charge_kWh + Discharge_kWh) ÷ (2 × Battery_kWh nominal)
Battery empty %, recharge %, และ design cycles ปรับได้ในปุ่ม ระบบ ตามสเปกแบตจริงของแต่ละบ้าน
ตัวอย่าง Jun 1: Charge 5.8, Discharge 4.5, Battery 10.24 kWh
(5.8 + 4.5) ÷ (2 × 10.24) = 0.503 cycle
EFC = Equivalent Full Cycle หรือรอบใช้งานเทียบเท่าเต็มหนึ่งรอบ ใช้วัดการเสื่อมแบตคร่าว ๆ
⚖️ Real Bill Calibration (ปรับจูนบิลค่าไฟ):
Coverage = วันที่มีข้อมูล inverter ÷ จำนวนวันในรอบบิล
EstimatedBill = Σ RawCost(day, BillFt) ของวันที่มีข้อมูล
BillRatio = ActualBill × Coverage ÷ EstimatedBill
CalibratedCost(day) = RawCost(day, BillFt) × BillRatio
RawCost(day) รวมไฟที่มิเตอร์นับเพิ่ม: kWh_on += W×13h, kWh_off += W×11h (วันหยุด/ก่อน TOU += W×24h)
W = (BillKwh × Coverage − ΣInverterImport) ÷ ชั่วโมงของวันที่มีข้อมูล
ตัวอย่าง: บิลจริง ฿900 ข้อมูลครบรอบ แต่ app ประเมิน ฿1,000 → Ratio 0.90 · วัน raw ฿40 จะโชว์ ฿36 และมี * กำกับ
รอบที่ยังไม่มีบิล: ใช้ W มัธยฐานของ 3 บิลล่าสุด —
ใช้เฉพาะรอบที่ Coverage ≥ 90% (ถ้ายังไม่มีบิลที่มีหน่วย จะใช้ K-Factor แบบเดิม)
Self-Sufficiency = (ΣLoad − ΣImport) ÷ ΣLoad ของช่วงนั้น · WoW/MoM/YoY เทียบค่าไฟเฉลี่ยต่อวัน
กำลังคำนวณ...