Độ dốc thời gian thực và phát hiện và tính toán đỉnh


9

Tôi có một tín hiệu mà tôi lấy mẫu ở 500khz. Tôi đang cố gắng phát hiện sự tăng, giảm và mức cao nhất trong dữ liệu đến. Cơ sở của cực đại có thể là 250 usec hoặc 2.5msec, biên độ có thể là 6db hoặc 15db so với mức nhiễu. Tôi không có snr tốt không may. Mức dc của tín hiệu không phải là hằng số mà di chuyển chậm hơn nhiều so với thành phần ac.  

Tại điểm quyết định, tôi cần biết độ dốc của sự tăng giảm. Đây là một hệ thống thời gian thực cứng và tôi thực sự cần phải đưa ra quyết định trong 100usec sau khi độ dốc xuống tới mức dc. 

Tôi đang tìm kiếm gợi ý làm thế nào tôi có thể thực hiện một thuật toán hiệu quả.  

Hiện tại tôi đang chạy trung bình (25 điểm dữ liệu đã được cộng lại) và cố gắng phát hiện xu hướng. Khi tôi phát hiện xu hướng lên, tôi bắt đầu tìm kiếm xu hướng xuống và một khi tôi làm điều đó, tôi có thể thu thập 50 mẫu khác và bắt đầu tính toán. 

Tiếng ồn bây giờ dễ dàng vít thuật toán này, do đó câu hỏi. 

Ngày mai

Vì lợi ích của người khác, cuối cùng tôi đã triển khai Trung bình Di chuyển theo sau là nhà tích hợp. Di chuyển trung bình của 64 dữ liệu trong quá khứ đã đủ trơn tru nhưng mất đi một mức độ, tích hợp 8 giá trị cuối cùng đã tăng trở lại và tôi chỉ đơn giản là tìm kiếm tăng và giảm, sau đó tôi đã thực hiện hồi quy tuyến tính cho độ dốc. Hoạt động ok, không tuyệt vời nhưng ok.


Bạn có thể đăng một chuỗi các chuỗi dữ liệu mà thuật toán hiện tại của bạn không thành công không?
Jim Clay

Làm điều này bất chấp tiếng ồn đáng kể là khá khó khăn. Đề xuất của Juancho về một sự khác biệt có lẽ là một điều tốt.
Daniel R Hicks

Câu trả lời:


5

Bạn nên bắt đầu với bộ phân biệt dải phân cách (tương đương với bộ phân biệt theo sau là bộ lọc thông thấp). Bộ phân biệt sẽ loại bỏ xu hướng tần số thấp và sẽ phản ứng mạnh với các đỉnh và độ dốc của bạn. Thành phần low-pass sẽ loại bỏ nhiễu vượt quá tần số cắt.

Bạn nên thiết kế tần số cắt của bạn để bạn có được các xung sạch cho các sườn dốc của mình.

Độ dốc dương sẽ chậm như các xung dương; độ dốc âm là các xung âm và cực đại sẽ tương ứng với độ giao nhau bằng 0 giữa dương và âm.

Loại bộ lọc này thường được triển khai như một bộ lọc FIR. Số lượng mẫu cho bộ lọc của bạn sau đó sẽ phụ thuộc vào các ràng buộc thời gian thực của bạn, độ sắc nét ở tần số cắt và chính tần số cắt.


Tôi không rành về DSP. Bạn có thể chỉ cho tôi một triển khai có thể? Dựa trên câu trả lời của bạn và kiến ​​thức hạn chế của tôi, tôi nghĩ rằng liên kết ( holoborodko.com/pavel/numerical-methods/numerical-derivative/ trộm ) thực hiện chính xác những gì bạn đề cập. Nếu tôi sử dụng một cách tiếp cận như vậy, tôi không biết 1) Làm thế nào để xác định tần số của tôi? 2) Làm thế nào để chọn hệ số bộ lọc?
Ktuncer

Ngoài ra liên kết sau đây giải quyết một vấn đề tương tự và chứa một loạt các liên kết tốt. dsprelated.com/showmessage/123740/1.php
Ktuncer
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.