ฉันมีสัญญาณที่ฉันสุ่มตัวอย่างที่ 500khz ฉันพยายามที่จะตรวจจับการเพิ่มขึ้นลดลงและจุดสูงสุดในข้อมูลที่เข้ามา ฐานของจุดสูงสุดอาจเป็น 250 usec หรือ 2.5msec, แอมพลิจูดอาจ 6db หรือ 15db เหนือพื้นเสียง ฉันไม่ได้มี snr ดีโชคไม่ดี ระดับ dc ของสัญญาณไม่คงที่ แต่เคลื่อนที่ช้ากว่าส่วนประกอบ ac มาก
ณ จุดตัดสินใจฉันจำเป็นต้องรู้ถึงความชันของการขึ้นลง นี่เป็นระบบเรียลไทม์ที่ยากลำบากและฉันจำเป็นต้องตัดสินใจจริง ๆ ใน 100usec หลังจากความชันลดลงถึงระดับ dc
ฉันกำลังมองหาคำแนะนำว่าฉันจะใช้อัลกอริทึมที่มีประสิทธิภาพได้อย่างไร
ขณะนี้ฉันกำลังทำงานเฉลี่ย (25 จุดข้อมูลที่ผ่านมารวมกัน) และพยายามตรวจสอบแนวโน้ม เมื่อฉันตรวจสอบแนวโน้มขึ้นฉันเริ่มมองหาแนวโน้มลงและเมื่อฉันทำฉันจะรวบรวมอีก 50 ตัวอย่างและเริ่มคำนวณ
เสียงรบกวนในขณะนี้ได้อย่างง่ายดายขันอัลกอริทึมนี้ดังนั้นคำถาม
อัปเดต
เพื่อประโยชน์ของผู้อื่นฉันได้ลงมือใช้ Moving Average แล้วตามด้วย integrator ค่าเฉลี่ยเคลื่อนที่ของข้อมูล 64 ที่ผ่านมานั้นราบเรียบพอเสียไป แต่เพิ่มขึ้นเป็นระดับรวม 8 ค่าสุดท้ายได้รับการเพิ่มขึ้นและฉันก็แค่ค้นหาขึ้น ๆ ลง ๆ หลังจากนั้นฉันก็ถดถอยเชิงเส้นสำหรับความชัน ใช้งานได้ดีไม่ดี แต่ก็โอเค