آردوینو - آموزش آردوینو-Arduinoتازه هاماژول های مخابراتی

برنامه راه اندازی ماژول های ASK با آردوینو

کاربرد این ماژول های ASK در ریموت کنترلرها می باشد. شما به سادگی از طریق یک فرستنده ریموت و گیرنده ASK می توانید چندین رله را روشن و خاموش کنید. قیمت ارزان، فاصله 100 متر در فضای باز، سادگی کارکرد این ماژول ها باعث گشته تا بیشترین کاربرد را در مصارف روزمره داشته باشد. این ماژول ها در فرکانس های کاری 433 و 315 ساخته می شوند و نسبت به فرکانس ریموت خود باید فرکانس گیرنده نیز انتخاب شوند.

مشخصات ماژول:

  • فرکانس کاری : 433mhz
  • ولتاژ کاری : 3.5 تا 12 ولت
  • جریان مصرفی : 10 الی 15 میلی آمپر
  • مدولاسیون: ASK
  • خروجی دیتا: TTL

اگر در جست و جوی راهی ارزان برای اتصال بیسیم برد های آردوینو خود به یک دیگر هستید یکی از ساده ترین و راحت ترین کارها استفاده از ماژول ASK است. در این آموزش از هیچ کتابخانه ای استفاده نشده و کد به صورت خیلی ساده و قابل فهم نوشته شده است.

ویدیوی علمکرد پروژه

در این برنامه یک فرستنده و گیرنده ساده طراحی کردیم. از led روی برد برای نشان دادن فرستاده شدن اطلاعات از فرستنده دریافت اطلاعات در گیرنده استفاده شده است.

نحوه اتصال فرستنده و گیرنده به برد های آردوینو

ابزار لازم برای راه اندزی پروژه

  • 2 برد آردوینو UNO یا برد های مشابه
  • برد برد
  • سیم برد بردی
  • ماژول های ASK با فرکانس 433 مگاهرتز

مدار فرستنده ASK با آردوینو

 

کد فرستده ASK با آردوینو

/* 
  RF Blink - Transmit sketch 
     Written by ScottC 17 Jun 2014
     Arduino IDE version 1.0.5
     Website: http://arduinobasics.blogspot.com
     Transmitter: FS1000A/XY-FST
     Description: A simple sketch used to test RF transmission.          
 ------------------------------------------------------------- */

 #define rfTransmitPin 4  //RF Transmitter pin = digital pin 4
 #define ledPin 13        //Onboard LED = digital pin 13

 void setup(){
   pinMode(rfTransmitPin, OUTPUT);     
   pinMode(ledPin, OUTPUT);    
 }

 void loop(){
   for(int i=4000; i>5; i=i-(i/3)){
     digitalWrite(rfTransmitPin, HIGH);     //Transmit a HIGH signal
     digitalWrite(ledPin, HIGH);            //Turn the LED on
     delay(2000);                           //Wait for 1 second
     
     digitalWrite(rfTransmitPin,LOW);      //Transmit a LOW signal
     digitalWrite(ledPin, LOW);            //Turn the LED off
     delay(i);                            //Variable delay
   }
 }

مدار گیرنده ASK با آردوینو

کد گیرنده ASK با آردوینو

/* 
  RF Blink - Receiver sketch 
     Written by ScottC 17 Jun 2014
     Arduino IDE version 1.0.5
     Website: http://arduinobasics.blogspot.com
     Receiver: XY-MK-5V
     Description: A simple sketch used to test RF transmission/receiver.          
 ------------------------------------------------------------- */

 #define rfReceivePin A0  //RF Receiver pin = Analog pin 0
 #define ledPin 13        //Onboard LED = digital pin 13

 unsigned int data = 0;   // variable used to store received data
 const unsigned int upperThreshold = 70;  //upper threshold value
 const unsigned int lowerThreshold = 50;  //lower threshold value

 void setup(){
   pinMode(ledPin, OUTPUT);
   Serial.begin(9600);
 }

 void loop(){
   data=analogRead(rfReceivePin);    //listen for data on Analog pin 0
   
    if(data>upperThreshold){
     digitalWrite(ledPin, LOW);   //If a LOW signal is received, turn LED OFF
     Serial.println(data);
   }
   
   if(data<lowerThreshold){
     digitalWrite(ledPin, HIGH);   //If a HIGH signal is received, turn LED ON
     Serial.println(data);
   }
 }

وقتی سیگنال High به آردوینو گیرنده فرستاده میشود AnalogRead مقدار صفر را بر میگرداند وقتی سیگنال Low فرستاده میشود مقدار AnalogRead چهارصد را نشان میدهد.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.