ผู้อ่านที่สนใจสังเกตเห็นว่าในบทความของผู้แต่งบทความที่มีชื่อเล่นว่า WilkoL เกี่ยวกับเครื่องกำเนิดสัญญาณและนาฬิกาที่มีการใช้งานเครื่องวัดความถี่เพียงอันเดียวจะปรากฏขึ้นและในบทความเกี่ยวกับเครื่องกำเนิดไฟฟ้าที่มีแก้วเป็นองค์ประกอบตั้งความถี่ เรื่องนี้เกี่ยวกับเขา
ฉันดีใจที่ได้ทำงาน homebrew กิ่ง ต้นแบบเริ่มต้นด้วยการศึกษาส่วนทางทฤษฎีคือด้วยการเลือกวิธีการวัดความถี่ ในหลายเมตรความถี่จำนวนช่วงเวลาของสัญญาณอินพุตในช่วงเวลาหนึ่งพูดนับหนึ่งวินาทีสำหรับเรื่องนี้:
วิธีนี้เหมาะสำหรับความถี่ที่สูงพอ แต่ถ้าความถี่ต่ำจะไม่อนุญาตให้รับตำแหน่งทศนิยมจำนวนมากพอ ตัวอย่างเช่นหากรอบการวัดใช้เวลาหนึ่งวินาทีดังนั้นสำหรับความถี่ของคำสั่ง 50 Hz จะมีทศนิยมเป็นศูนย์ ตัวอย่างเช่นคุณต้องการสามสัญญาณ - มีทางออกเราขยายวงจรการวัดเป็น 1,000 วินาที แต่เป็นสิ่งหนึ่งที่พีซีหรือสมาร์ทโฟนทำงานช้าลงซึ่งอย่างน้อยทุกคนคุ้นเคยและเป็นอีกเรื่องหนึ่ง - หากเครื่องวัดความถี่เข้าร่วมกับ บริษัท สนุก ๆ นี้สิ่งนี้จะทำให้ผู้ใช้หมดความรู้สึก โดยทั่วไปจำเป็นต้องใช้วิธีอื่น แต่ถ้าเราวัดระยะเวลาของการแกว่ง
ทำเช่นกัน พวกเขาใช้สัญญาณของความถี่อ้างอิงซึ่งเป็นคำสั่งหลายขนาดที่สูงกว่าค่าที่วัดได้และพิจารณาว่าช่วงเวลาของสัญญาณอ้างอิงจะผ่านไปเท่าใดในช่วงเวลาหนึ่งของช่วงเวลาที่วัด ตัวอย่างเช่นด้วยความถี่อ้างอิงที่ 10 MHz และวัดที่ 50 Hz นี่จะเท่ากับ 200,000 ซึ่งหมายความว่าช่วงเวลานั้นคือ 20,000.0 มิลลิวินาทีและไมโครคอนโทรลเลอร์ที่ทันสมัย คำนวณช่วงเวลาใหม่ให้ง่าย ๆ ด้วยความถี่เท่ากับ 50,000 Hz หากความถี่เพิ่มขึ้นเป็น 50.087 เฮิร์ตซ์จากนั้นในช่วงเวลาหนึ่งของสัญญาณอินพุท 199650 ช่วงเวลาที่เป็นแบบอย่างที่ดีและการเปลี่ยนแปลงดังกล่าวเครื่องวัดความถี่จะสังเกตเห็นในเวลาจริง
แต่ด้วยวิธีการวัดนี้จำนวนตำแหน่งทศนิยมลดลงตามความถี่ที่เพิ่มขึ้นของสัญญาณอินพุต ตัวอย่างเช่นถ้าเป็น 40 kHz และการอ้างอิงยังคงเป็น 10 MHz ดังนั้นที่ 40-161 Hz เราจะได้รับความถี่อ้างอิง 249 ช่วงและที่ 39840 Hz - 251 จุด อย่างน้อยสองเมตรความถี่อยู่ในลำดับ: หนึ่งสำหรับความถี่สูงการดำเนินงานในวิธีแรกอื่น ๆ สำหรับความถี่ต่ำในครั้งที่สอง แม้ว่า - รอ! ไม่สามารถรวมทั้งสองวิธีเข้าด้วยกันในเครื่องวัดความถี่เดียวได้หรือไม่ คุณสามารถทำได้และอาจารย์บอกวิธี คุณจำเป็นต้องใช้ทริกเกอร์ D ธรรมดาจากนั้นสัญลักษณ์และตารางความจริงจะได้รับ:
ตัวช่วยสร้างจะแสดงสัญญาณสี่สัญญาณบนแผนภูมิซึ่งตัวที่สี่จะสร้างทริกเกอร์:
สัญญาณแรกของสัญญาณเหล่านี้คือความถี่ที่วัดได้มันถูกป้อนเข้ากับสัญญาณนาฬิกาของ D-trigger ตัวอย่างที่สองคือความถี่อ้างอิงเช่นอีกครั้งที่ 10 MHz ซึ่งต้องการความเสถียรสูง ที่สามคือสัญญาณที่มีความถี่ของคำสั่งของ 1 Hz ซึ่งไม่จำเป็นต้องมีความเสถียรเลยมันจะถูกนำไปใช้กับทริกเกอร์เดียวกันที่อินพุทดีทที่สี่ถูกสร้างขึ้นโดยทริกเกอร์จากที่หนึ่งและสามดังต่อไปนี้ เมื่อสัญญาณที่สามเปลี่ยนจากศูนย์เป็นหนึ่งทริกเกอร์จะไม่ตอบสนองต่อสิ่งนี้ทันที แต่เมื่อสวิตช์ดังกล่าวเกิดขึ้นกับสัญญาณแรกหลังจากนั้น ดังนั้นด้านหน้าของหนึ่งในพัลส์ของสัญญาณที่สี่เกิดขึ้นพร้อมกับด้านหน้าของพัลส์ตัวใดตัวหนึ่งของแรก จากนั้นสัญญาณที่สามตามด้วยสัญญาณที่สี่จะเปลี่ยนเป็นศูนย์ซึ่งไมโครคอนโทรลเลอร์ไม่ตอบสนองใด ๆ จากนั้นสัญญาณที่สามจะสลับกลับไปเป็นสัญญาณหนึ่ง แต่ทริกเกอร์จะไม่ตอบสนองกับมันอีกทันที แต่หลังจากการสลับสัญญาณแรกเท่านั้น และอีกครั้งแนวหน้าของสัญญาณที่หนึ่งและที่สี่ตรงกันอย่างสมบูรณ์ และในช่วงเวลาเต็มของสัญญาณที่สี่เหมาะกับจำนวนเต็มของช่วงเวลาแรก เพิ่มเติม - เรื่องทางเทคนิค: อย่าลืมว่าเรายังมีสัญญาณที่สอง ไมโครคอนโทรลเลอร์คำนวณจำนวนสัญญาณเต็มช่วงเวลาของสัญญาณแรกและตัวที่สองที่ตกลงในช่วงเต็มของสี่
ดังนั้นเราจึงได้ตัวเลขสองตัว ตัวอย่างเช่น 32 และ 10185892 คูณ 32 ด้วย 10,000,000 (ความถี่อ้างอิง) และหารด้วย 10185892 เราได้รับ 31.416 Hz ทศนิยมสามตำแหน่ง และการวัดยังคงแม่นยำทั้งที่ความถี่ต่ำและที่สูงใกล้กับแบบจำลอง และถ้าคุณต้องการวัดความถี่ที่สูงขึ้นคุณสามารถเพิ่มตัวแบ่ง
ตอนนี้เราจำเป็นต้องตัดสินใจว่าไมโครคอนโทรลเลอร์ตัวไหนที่จะเรียกใช้เครื่องวัดความถี่ ต้นแบบได้พยายามที่จะทำให้พวกเขาใน ATmega328 และแม้กระทั่งใน STM32F407 ทำงานที่ความถี่สัญญาณนาฬิกาของ 168 MHz แต่คราวนี้เขารู้สึกตื้นตันกับความเรียบง่ายและตัดสินใจที่จะตรวจสอบว่าเขาสามารถได้รับผลลัพธ์ที่คล้ายกันใน ATtiny2313
เขามีข้อสรุปที่เพียงพอโดยเฉพาะอย่างยิ่งถ้าคุณใช้จอแสดงผล LED ที่มีชิปไดรเวอร์ในตัวเช่น MAX7219:
แผนภาพอุปกรณ์ที่สมบูรณ์มีลักษณะดังนี้:
ไดร์เวอร์ที่ค่อนข้างซับซ้อนสำหรับส่วนประกอบที่ไม่ต่อเนื่องประกอบด้วยวงจร RC ตัว จำกัด ไดโอดระยะแอมป์ถูกนำมาใช้เพื่อรับพัลส์รูปสี่เหลี่ยมผืนผ้าจากสัญญาณเกือบทุกรูปร่าง D- ทริกเกอร์ตั้งอยู่ด้านนอกสัญญาณของความถี่ที่วัดได้ (แรก) ถูกป้อนไปจากไดรเวอร์สัญญาณที่มีความถี่ 10 MHz และ 1 Hz (ที่สองและสามตามลำดับ) ได้รับจากไมโครคอนโทรลเลอร์สัญญาณเอาต์พุต (ที่สี่) กลับไปที่ไมโครคอนโทรลเลอร์ ทริกเกอร์ตัวที่สองทำหน้าที่สร้างสัญญาณที่จุดควบคุม มีรูปแบบ PDF เดียวกันในไฟล์เก็บถาวร ZIP พร้อมใช้งาน ที่นี่.
เมื่อรวบรวมไดอะแกรมแล้วเจ้านายจะรวบรวมเครื่องวัดความถี่ไว้ในนั้นมันจะกลายเป็นดังนี้:
ในภาพซึ่งแตกต่างจากวงจรแบตเตอรี่และตัวควบคุมการชาร์จจะปรากฏขึ้นตัวควบคุมการเต้นของชีพจรยังถูกกล่าวถึงโดยอาจารย์ด้วยเช่นกัน แต่ไม่สามารถมองเห็นได้ ส่วนประกอบทั้งหมดเหล่านี้ถูกเพิ่มเข้ามาในภายหลังซึ่งทำให้การทำงานกับเครื่องวัดความถี่สะดวกยิ่งขึ้น แบตเตอรี่ 18650 ควรได้รับการป้องกันสายบัดกรีที่ไม่สามารถใช้ได้ ไม่ว่าจะเป็นช่องหรือจุดเชื่อม
เฟิร์มแวร์ (โกหก) ที่นี่ ในไฟล์ ZIP ด้วย) มาสเตอร์เขียนโดยคำนึงถึงความจำเป็นในการถ่ายโอนไมโครคอนโทรลเลอร์จากนาฬิกาไปยังเครื่องกำเนิด RC เพื่อทำงานจากควอตซ์ภายนอกเช่นเดียวกับความเป็นไปได้ในการกำหนดฟังก์ชั่นต่าง ๆ ให้กับแต่ละวงจร
ในการอัพโหลดเฟิร์มแวร์ตัวช่วยสร้างจะใช้โปรแกรมเมอร์ในวงจรจาก Olimex นี่คือ บริษัท บัลแกเรียที่มีโปรไฟล์ใกล้กับ Adafruit
อาจารย์ผนึกการปล่อยเล็กน้อยบนหน้าจอแล้วตัดรูในฝาครอบเรือนเพื่อให้การคายประจุนี้ถูกปิดเนื่องจากการอ่านไม่ถูกต้องแม้จะใช้มาตรการทั้งหมดก็ตามสิ่งนี้ได้รับผลกระทบจากคุณสมบัติของอัลกอริทึมและความเสถียรของอุณหภูมิไม่สูงเกินไปของคริสตัลออสซิลเลเตอร์ ในการตั้งค่าต้นแบบจะเชื่อมต่อเครื่องวัดความถี่ภายนอกเข้ากับจุดควบคุมด้วยการรักษาความถี่ของเครื่องกำเนิดสัญญาณนาฬิกาจากตัวรับสัญญาณ GPS หลังจากนั้นจะตั้งค่า 5 MHz ที่แน่นอนโดยการหมุนตัวเก็บประจุการปรับแต่ง (ทริกเกอร์แบ่งความถี่สัญญาณนาฬิกาสอง) เครื่องวัดความถี่ที่ปรับจูนอย่างถูกต้องให้ความแม่นยำที่จำเป็นในช่วงของความถี่ที่วัดได้จาก 0.2 Hz ถึง 2 MHz ภาพถ่ายสองภาพต่อไปนี้แสดงให้เห็นว่าอาจารย์ใช้สัญญาณเดียวกันพร้อมกันกับการอ้างอิงและการตรวจสอบความถี่เมตร: