ตัวกรองความถี่ต่ำมาก


13

ฉันมีบอร์ดรวบรวมข้อมูล (A / D + ตัวประมวลผลสัญญาณดิจิตอล) และฉันต้องการตรวจสอบว่าตัวกรองสัญญาณดิจิตอลสูง (นำไปใช้ใน DSP) ที่ความถี่ตัดต่ำมาก (0.05Hz) ใช้งานได้จริงหรือไม่

ถ้านี่เป็นความถี่ที่ฉันสามารถสร้างได้ด้วยเครื่องกำเนิดสัญญาณมันจะง่ายต่อการตรวจสอบ แต่ 0.05Hz ต่ำเกินไปและฉันไม่สามารถสร้างได้ วิศวกรตรวจสอบตัวกรองประเภทนี้อย่างไร


3
ใจของฉันปลิวไปด้วยคำถามนี้และมันเป็นคำตอบ! ฉันไม่เคยพิจารณาที่จะกรองความถี่ต่ำนี้ :)
35414

6
@bitsmack ฉันได้เห็น high-pass 50 milliHz ในตราสาร electrogastrography (EGG)
Nick Alexeev

เครื่องกำเนิดสัญญาณบางตัวมีทั้งปุ่ม MHz และปุ่ม mHz
AndrejaKo

คุณสามารถป้อนสัญญาณทดสอบในรูปแบบดิจิตอลลงใน DSP ได้หรือไม่? มันง่ายที่จะสร้างความถี่ใด ๆ ในรูปแบบดิจิตอล --- ข้อเสียคือคุณจะไม่ทดสอบอะนาล็อกและส่วน A / D ของบอร์ด
pabouk

1
@bitsmack หมายความว่าคุณต้องรอเป็นเวลานานก่อนที่สิ่งต่าง ๆ จะเกิดขึ้นและ "การกวาด" จะต้องช้ามาก (ชั่วโมงและชั่วโมง) แต่ก็เป็นการดีที่จะทดสอบประสิทธิภาพการทำงานตามเวลาจริงอย่างน้อยหนึ่งครั้งก่อนที่จะเชื่อถือได้ ช้าลง (หลังจากการทดสอบเร่งความเร็วขึ้น) สิ่งต่าง ๆ เช่นนามแฝงสามารถทำให้หัวของพวกเขา
Spehro Pefhany

คำตอบ:


18

ฉันเดาว่ามันขึ้นอยู่กับหลายปัจจัยลำดับหมู่ของตัวกรองอื่น ๆ แต่คุณมีความเป็นไปได้เล็กน้อย:

  1. ค้นหาเครื่องกำเนิดสัญญาณที่ไปถึงที่นั่น ปัจจุบันค่อนข้างมีราคาไม่แพง
  2. เชื่อถือคณิตศาสตร์ นี่คือตัวกรองดิจิทัลและจะปรับอัตราการสุ่มตัวอย่าง หากคุณสามารถเพิ่มอัตราการสุ่มตัวอย่างด้วยขนาดของสองคำสั่งคุณจะมีตัวกรองที่มีการตัด 5Hz ซึ่งง่ายต่อการวัด ในทำนองเดียวกันหากปัจจัย จำกัด กลายเป็น ADC คุณสามารถแยกมันออกจากตัวกรองและฟีดในข้อมูลดิจิตอลประดิษฐ์บางส่วน
  3. ใช้การตอบสนองขั้นตอน (สัญญาณไวด์แบนด์จำนวนมากจะทำ) คำนวณการตอบสนองขั้นตอนของตัวกรองที่คุณต้องการและเปรียบเทียบกับผลลัพธ์ หรืออีกวิธีหนึ่งคือคำนวณการตอบสนองความถี่โดยใช้ FFT ของการตอบสนองขั้นตอน

เราใช้รูปแบบของทางเลือกที่ 3 ในการตั้งค่าการทดสอบของเราไม่ใช่เพราะเราไม่สามารถสร้างรูปคลื่นที่ต้องการได้ช้า แต่เนื่องจากการตัด <0.01Hz ของตัวกรองแบบอะนาล็อกของเราจะใช้เวลานานเกินไปที่จะจำแนกลักษณะถ้าเราพยายามแม้แต่ . ทำให้เวลาในการทดสอบลดลงจากมากกว่าหนึ่งชั่วโมงเหลือเพียงไม่กี่นาที


10

μμ

น่าเสียดายที่คุณไม่สามารถทำสิ่งนั้นได้ต่ำด้วยโมดูล DDS ราคาถูก (เช่น AD9850) เพราะคำที่ใช้ในการปรับแต่งนั้นมีเพียง 32 บิตและโดยทั่วไปนาฬิกาจะอยู่ที่ 125MHz ดังนั้นนั่นคือความละเอียด 0.03Hz ฉันคิดว่ามันจะให้คะแนนข้อมูลคุณเล็กน้อย (0.0291 / 0.0582 / 0.0873 Hz)

คุณสามารถป้อนขั้นตอนและดูการตอบกลับโดเมนเวลา


2
หากโมดูล DDS ของคุณสามารถรับสัญญาณนาฬิกาภายนอกได้เพียงแค่กดมัน! ท.บ. เป็นหัวใจที่แตกต่างกันมากในใจ ....
ThreePhaseEel

1
@ThreePhaseEel คุณสามารถทำได้ แต่จะไม่เป็นผลลัพธ์ที่ดีมากโดยทั่วไปเว้นแต่คุณจะออกแบบตัวกรอง low pass pass ซึ่งโดยทั่วไปแล้วจะคล้ายกับตัวกรองวงรี LC 5 ขั้ว ในกรณีของ OP เนื่องจากความถี่สูงสุดอยู่ในระดับต่ำดังนั้นเขาหรือเธออาจจะเพิ่มตัวกรองความถี่ต่ำผ่าน 1Hz ไปยังเอาต์พุตและรับสัญญาณที่ดี
Spehro Pefhany

ตกลงว่าคุณจะต้องใช้เครื่องกรอง - AD9850s มีนาฬิกาขั้นต่ำ 1MHz btw ซึ่งค่อนข้าง จำกัด แต่ก็ยังมีมากพอที่จะได้รับผลลัพธ์ตามที่ OP ต้องการ
ThreePhaseEel

@ThreePhaseEel แน่นอนว่าแม้แต่ 8 หรือ 10 MHz จะให้ความละเอียด 0.002 หรือ 0.0024Hz
Spehro Pefhany

6

ตัวเลือกที่ 1: ทดสอบบนพีซี

หากรหัส DSP ของคุณเขียนเป็น C คุณสามารถตั้งค่าชุดควบคุมการทดสอบใน GCC หรือ Visual Studio คุณรู้อัตราตัวอย่างสำหรับรหัส DSP ของคุณดังนั้นให้ใช้ Excel เพื่อสร้างไฟล์ CSV สำหรับการป้อนข้อมูลทดสอบและให้ชุดทดสอบของคุณมีการส่งออกไฟล์ CSV ที่คุณสามารถตรวจสอบได้

ตัวเลือกที่ 2: ทดสอบ DSP ด้วยอินเทอร์เฟซพีซี

หากรหัส DSP ของคุณต้องรันบน DSP คุณยังสามารถใช้พีซีเพื่อทดสอบได้ ตั้งค่าชุดควบคุมการทดสอบบน DSP ซึ่งรับค่าจากพีซีรันหนึ่งขั้นตอนของตัวกรอง DSP จากนั้นรายงานเอาต์พุตตัวกรองสำหรับขั้นตอนนั้นกลับไปที่พีซี (โดยใช้ USB, RS-232 หรือ TCP / IP ขึ้นอยู่กับ วิธีที่คุณเชื่อมต่อกับ DSP) คุณจะต้องใช้ชุดทดสอบด้าน PC เพื่อส่งและรับค่าเหล่านั้น อีกครั้งคุณสามารถตั้งค่าไฟล์ทดสอบอินพุต CSV บนพีซีส่งตัวอย่างต่อเนื่องไปยังรหัสตัวกรองและดัมพ์เอาต์พุตไฟล์ CSV ที่คุณสามารถตรวจสอบได้

สำหรับทั้ง...

หากคุณกำลังกรองที่ 0.05Hz อัตราการสุ่มตัวอย่างอาจเป็นไปได้ค่อนข้างช้าเช่นกัน การใช้ชุดควบคุมการทดสอบจะช่วยให้คุณเรียกใช้การทดสอบเหล่านี้เร็วกว่าเวลาจริงซึ่งจะทำให้กระบวนการทดสอบของคุณมีประสิทธิภาพมากขึ้น


5

หากคุณมีตัวแปลง D / A เช่นกันในระบบ DSP ของคุณคุณสามารถสร้างสัญญาณความถี่ต่ำมากในซอฟต์แวร์ที่ป้อนกลับไปยังอินพุต A / D ของคุณ หรือคุณสามารถใช้การ์ด D / A หรืออะแดปเตอร์ USB เพื่อสร้างสัญญาณ ตัวอย่างหนึ่งของอุปกรณ์ดังกล่าวจะเป็นLabJackแต่มีอีกมากมายที่มีราคา / ความสามารถที่แตกต่างกันออกไป ความเป็นไปได้อีกอย่างก็คือการใช้ไมโครคอนโทรลเลอร์ราคาถูก + DAC เช่น Raspberry Pi หรือ Arduino


2

ถ้านี่เป็นความถี่ที่ฉันสามารถสร้างได้ด้วยเครื่องกำเนิดสัญญาณมันจะง่ายต่อการตรวจสอบ แต่ 0.05Hz ต่ำเกินไปและฉันไม่สามารถสร้างได้ วิศวกรตรวจสอบตัวกรองประเภทนี้อย่างไร

มีสามวิธีที่ดีในการตรวจสอบการตอบสนองของตัวกรองวิธีหนึ่งคือฟังก์ชั่น dirac delta (ฟังก์ชั่นแรงกระตุ้นหรือพัลส์สั้น) อีกวิธีหนึ่งคืออินพุตขั้นตอนและอันสุดท้ายคือการกวาดความถี่

ด้วยเครื่องมือที่ฉันใช้การทดสอบสามารถใช้เวลานานหลายสัปดาห์ถึงเดือนระบบทางกายภาพบางอย่างของเรามีการตอบสนองในช่วงวัน วิธีที่ดีที่สุดในการตรวจสอบระบบ \ ฟิลเตอร์เหล่านี้คือการใช้อินพุตขั้นตอนจากนั้นวัดค่าเวลาคงที่ หากคุณจำค่าคงที่เวลาสำหรับอินพุตแรงดันไฟฟ้าคือ:

V(t)=V0(1et/τ)

τ=RC

ป้อนคำอธิบายรูปภาพที่นี่
ที่มา: http://mit6002.blogspot.com/2011/05/1011-parallel-rc-circuit-step-input.html

(รูปมีแหล่งจ่ายกระแสที่มีตัวต้านทานแบบขนานซึ่งเทียบเท่ากับแหล่งจ่ายแรงดันที่มีตัวต้านทานแบบอนุกรม)


0

คุณสามารถสร้างสัญญาณ 50 mHz ที่ราบรื่นอย่างราบรื่นด้วยมือโดยใช้โพเทนชิออมิเตอร์และนาฬิกาข้อมือ

หรือคำนวณการตอบสนองขั้นตอนที่คาดหวังของตัวกรองของคุณ ให้ฮาร์ดแวร์ของคุณมีขั้นตอนการป้อนข้อมูลโดยการสลับสวิตช์ ลงจุดเอาท์พุทภายในหนึ่งนาทีหรือมากกว่านั้น (ถ้าฐานเวลาออสซิลโลสโคปของคุณไม่ไปอย่างช้า ๆ ให้ทำการบันทึกเทปมัลติมิเตอร์และคัดลอกการอ่านทุกวินาที) เปรียบเทียบการตอบสนองตามขั้นตอนที่วัดกับสิ่งที่คุณทำนาย หากตรงกัน (เพียงพออย่างยิ่งให้พิจารณาถึงความไม่ถูกต้องของ ADC / DAC / เวลา) ตัวกรองของคุณจะทำงานตามที่ออกแบบไว้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.