Arduino फ्रीक्वेंसी मीटर 16 × 2 डिस्प्ले का उपयोग करना

समस्याओं को खत्म करने के लिए हमारे साधन का प्रयास करें





इस लेख में हम Arduino का उपयोग करके एक डिजिटल आवृत्ति मीटर का निर्माण करने जा रहे हैं, जिसके रीडिंग 16x2 एलसीडी डिस्प्ले पर दिखाए जाएंगे और इसमें 35 हर्ट्ज से 1MHz तक मापने की सीमा होगी।

परिचय

इलेक्ट्रॉनिक्स के प्रति उत्साही होने के कारण, हम सभी एक बिंदु पर आ गए हैं जहाँ हमें अपनी परियोजनाओं में आवृत्ति को मापने की आवश्यकता है।



उस बिंदु पर हमने महसूस किया कि आवृत्ति को मापने के लिए एक आस्टसीलस्कप एक उपयोगी उपकरण है। लेकिन, हम सभी जानते हैं कि एक आस्टसीलस्कप एक महंगा उपकरण है जो सभी शौकियों को बर्दाश्त नहीं कर सकता है और शुरुआती लोगों के लिए आस्टसीलस्कप एक ओवरकिल उपकरण हो सकता है।

आवृत्ति मापने के मुद्दे पर काबू पाने के लिए, हॉबीस्टिस्ट को एक महंगी आस्टसीलस्कप की आवश्यकता नहीं है, हमें बस एक आवृत्ति मीटर की आवश्यकता है जो उचित सटीकता के साथ आवृत्ति को माप सके।



इस लेख में हम एक आवृत्ति मीटर बनाने जा रहे हैं, जो निर्माण के लिए सरल है और शुरुआती अनुकूल है, यहां तक ​​कि अरुडिनो में नोब भी आसानी से पूरा कर सकते हैं।

रचनात्मक विवरण में जाने से पहले, आइए जानें कि आवृत्ति क्या है और इसे कैसे मापा जा सकता है।

फ्रीक्वेंसी क्या है? (नोब्स के लिए)

हम शब्द आवृत्ति से परिचित हैं, लेकिन वास्तव में इसका क्या मतलब है?

खैर, आवृत्ति को दोलन या चक्र प्रति सेकंड की संख्या के रूप में परिभाषित किया गया है। इस परिभाषा का क्या अर्थ है?

इसका अर्थ है कि एक सेकंड में 'कुछ' का आयाम ऊपर और नीचे जाता है। उदाहरण के लिए हमारे आवास पर एसी बिजली की आवृत्ति: 'वोल्टेज' (is कुछ 'की जगह' वोल्टेज ') का आयाम एक सेकंड में (+) और नीचे (-) हो जाता है, जो अधिकांश देशों में 50 गुना है।

एक चक्र या एक दोलन में ऊपर और नीचे शामिल होते हैं। तो एक चक्र / दोलन है आयाम शून्य से सकारात्मक शिखर तक जाता है और शून्य पर वापस आता है और नकारात्मक शिखर पर जाता है और शून्य पर लौटता है।

'समय अवधि' भी एक शब्द है जिसका उपयोग आवृत्ति से निपटने के दौरान किया जाता है। समय अवधि 'एक चक्र' को पूरा करने के लिए लिया गया समय है। यह आवृत्ति का विलोम मान भी है। उदाहरण के लिए 50 हर्ट्ज में 20 एमएस समय अवधि है।

1/50 = 0.02 सेकंड या 20 मिलीसेकंड

अब तक आपको आवृत्ति और उससे संबंधित शर्तों के बारे में कुछ पता होगा।

आवृत्ति को कैसे मापा जाता है?

हम जानते हैं कि एक चक्र उच्च और निम्न संकेत का संयोजन है। उच्च और निम्न संकेतों की अवधि को मापने के लिए, हम arduino में 'नाड़ी' का उपयोग करते हैं। पल्स इन (पिन, हाई) उच्च संकेतों की अवधि को मापता है और पल्स इन (पिन, लो) कम संकेतों की अवधि को मापता है। दोनों की नाड़ी अवधि जोड़ी जाती है जो एक चक्र की समय अवधि देती है।

निर्धारित समय अवधि को तब एक सेकंड के लिए गणना की जाती है। यह निम्नलिखित सूत्र द्वारा किया जाता है:

फ्रीक = माइक्रोसेकंड में 1000000 / समय अवधि

आर्डिनो से समय अवधि माइक्रोसेकंड में प्राप्त होती है। Arduino पूरे सेकंड के लिए इनपुट आवृत्ति का नमूना नहीं देता है, लेकिन यह केवल एक चक्र की समयावधि का विश्लेषण करके आवृत्ति की सटीक भविष्यवाणी करता है।

अब आप जानते हैं कि आर्डिनो कैसे और माप की गणना करता है।

सर्किट:

सर्किट में आर्कडिनो होते हैं जो परियोजना का मस्तिष्क है, 16x2 एलसीडी डिस्प्ले, आईसी 7404 इन्वर्टर और एक पोटेंशियोमीटर इसके विपरीत को समायोजित करने के लिए आयसीडी प्रदर्शन ।

प्रस्तावित सेटअप 35Hz से 1 MHz तक का हो सकता है।

Arduino प्रदर्शन कनेक्शन:

उपरोक्त आरेख स्व-व्याख्यात्मक है, आर्डिनो और डिस्प्ले के बीच वायरिंग कनेक्शन मानक है और हम अन्य आर्डिनो और एलसीडी आधारित परियोजनाओं पर समान कनेक्शन पा सकते हैं।

Arduino फ्रीक्वेंसी मीटर 16x2 डिस्प्ले का उपयोग करना

उपरोक्त आरेख में इन्वर्टर IC 7404 होता है। IC 7404 की भूमिका इनपुट से शोर को खत्म करना है, ताकि शोर Arduino को न प्रचारित करे जो गलत रीडिंग दे सकता है और IC 7404 शॉर्ट स्पाइक वोल्टेज को सहन कर सकता है जो पास नहीं होगा आर्डिनो पिन्स। आईसी 7404 केवल आयताकार तरंगों का उत्पादन करता है जहां अर्डिनो आसानी से एनालॉग तरंगों की तुलना कर सकता है।

नोट: अधिकतम शिखर से शिखर इनपुट 5 वी से अधिक नहीं होना चाहिए।

कार्यक्रम:

//-----Program Developed by R.Girish-----//
#include
LiquidCrystal lcd(12, 11, 5, 4, 3, 2)
int X
int Y
float Time
float frequency
const int input = A0
const int test = 9
void setup()
{
pinMode(input,INPUT)
pinMode(test, OUTPUT)
lcd.begin(16, 2)
analogWrite(test,127)
}
void loop()
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Frequency Meter')
X=pulseIn(input,HIGH)
Y=pulseIn(input,LOW)
Time = X+Y
frequency=1000000/Time
if(frequency<=0)
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Frequency Meter')
lcd.setCursor(0,1)
lcd.print('0.00 Hz')
}
else
{
lcd.setCursor(0,1)
lcd.print(frequency)
lcd.print(' Hz')
}
delay(1000)
}
//-----Program Developed by R.Girish-----//

आवृत्ति मीटर का परीक्षण:

एक बार जब आप परियोजना का सफलतापूर्वक निर्माण कर लेते हैं, तो यह जांचना आवश्यक है कि सब कुछ ठीक काम कर रहा है या नहीं। रीडिंग की पुष्टि करने के लिए हमें ज्ञात आवृत्ति का उपयोग करना होगा। इसे पूरा करने के लिए हम arduino की इनबिल्ट PWM कार्यक्षमता का उपयोग कर रहे हैं, जिसकी आवृत्ति 490Hz है।

प्रोग्राम में पिन # 9 को 50% शुल्क चक्र में 490 हर्ट्ज देने में सक्षम है, उपयोगकर्ता आवृत्ति मीटर के इनपुट तार को पकड़ सकता है और पिन # 9 में सम्मिलित कर सकता है जैसा कि चित्र में दिखाया गया है, हम एलसीडी डिस्प्ले पर 490 हर्ट्ज देख सकते हैं (कुछ सहिष्णुता के साथ), यदि उल्लिखित प्रक्रिया सफल रही, तो आप आवृत्ति मीटर आपको प्रयोगों की सेवा के लिए तैयार हैं।

लेखक का प्रोटोटाइप:

Arduino फ़्रिक्वेंसी मीटर प्रोटोटाइप छवि

उपयोगकर्ता इस Arduino आवृत्ति मीटर सर्किट प्रोटोटाइप का परीक्षण बाहरी आवृत्ति जनरेटर का उपयोग करके भी कर सकता है जो ऊपर की छवि में दिखाया गया है।




पिछला: पूर्ण कार्यक्रम कोड के साथ Arduino शुद्ध साइन वेव इन्वर्टर सर्किट अगला: Arduino का उपयोग करके एक एकल चैनल आस्टसीलस्कप बनाना