فرستنده رادیویی 315MHZ
۴۶,۰۰۰ تومان
ماژول فرستنده رادیویی 315MHZ ASK
براي سفارش تعداد بالاي محصول و استعلام قيمت با شماره هاي فروشگاه تماس بگيريد يا در تلگرام با ما در تماس باشيد
موجود
به کمک ماژول فرستنده رادیویی می توانید ریموت ها مختلف لرن کد و فیکس کد را راه اندازی کنید، بدین منظور می توانید از انکدر و دیکدرهای خانوادهPT برای راه اندازی ریموت های فیکس و برای راه اندازی ریموت های لرن کد می توانید از آی سی ها خانواده EV مانند EV1527 استفاده کنید. فرکانس این ماژول 315 مگاهرتز است و لازم است که در فرستنده و گیرنده از فرکانس یکسان استفاده نمود. ولتاژ کاری ماژول 5 ولت بوده و پایه دیتا دوپایه وسط می باشد.
من تصمیم گرفتم که در مورد این فرستنده گیرنده ساده ای بنویسم و چگونه می توانیم آن را با arduino وصل کنیم و آن را برنامه ریزی کنیم.
در ابتدا نگاهی به آنچه که ما نیاز داریم نگاهی بیاندازیم:
1) 2 Arduino Board “من از Uno استفاده کردم”
2) ماژول فرستنده و گیرنده RF 315MHz یا 433MHz.
3) سیم jumper.
4) BreadBoard.
5) منبع تغذیه خارجی (9 ولت باتری * 2) “اختیاری”.
مرحله 1: مشخصات ماژول
ولتاژ کاری: 3 تا 12 ولت حداکثر. برق مصرفی 12 ولت
جریان کار: حداکثر حداکثر 40mA و min 9mA
حالت رزونانس: (SAW)
حالت مدولاسیون: ASK
فرکانس کار: شباهت 315 مگاهرتز یا 433 مگاهرتز
قدرت انتقال: 25 مگا بایت (315 مگاهرتز در 12 ولت)
خطای فرکانس: 150 کیلوهرتز (حداکثر)
سرعت: کمتر از 10Kbps
بنابراین این ماژول تا 90 متر در ناحیه باز است.
مرحله 2: طرح بندی
اتصال برای این ماژول بسیار آسان است
برای فرستنده:
Vcc >>>> 5V
ATAD >>> D12 “شما می توانید آن را به عنوان دوست دارید از نرم افزار را تغییر دهید”.
Gnd >>> Gnd
مرحله3: کتابخانه سیم مجازی آردوینو
خوشبختانه، یک کتابخانه محبوب برای arduino به نام “VirtualWire” “ایجاد شده توسط مایک McCauley
VirtualWire یک کتابخانه Arduino است که امکانات برای ارسال پیام کوتاه، بدون آدرس، ارسال مجدد یا تایید، کمی مانند UDP بیش از بی سیم، با استفاده از ASK (دامنه تغییر کلید) فراهم می کند. پشتیبانی از تعدادی فرستنده و گیرنده رادیو ارزان قیمت است.
این کتابخانه به شما اجازه می دهد تا بایت ها و رشته ها را به آسانی ارسال و دریافت کنید
ابتدا کتابخانه را از اینجا دانلود کنید
پس از استخراج پوشه و انتقال آن به “کتابخانه ها” در پوشه arduino
این یک کد ساده است، شخصیت ‘1’ را ارسال می کند و پس از 2 ثانیه شخصیت ‘0’ و غیره ارسال خواهد شد.
این کد برای فرستنده:
//simple Tx on pin D12
//Written By : Mohannad Rawashdeh
// 3:00pm , 13/6/2013
//http://www.genotronex.com/
//…………………………….
#include
char *controller;
void setup() {
pinMode(13,OUTPUT);
vw_set_ptt_inverted(true); //
vw_set_tx_pin(12);
vw_setup(4000);// speed of data transfer Kbps
}
void loop(){
controller=”1″ ;
vw_send((uint8_t *)controller, strlen(controller));
vw_wait_tx(); // Wait until the whole message is gone
digitalWrite(13,1);
delay(2000);
controller=”0″ ;
vw_send((uint8_t *)controller, strlen(controller));
vw_wait_tx(); // Wait until the whole message is gone
digitalWrite(13,0);
delay(2000);
}
مرحله 4: یک فرستنده،چند گیرنده
شما می توانید بسیاری از گیرنده را متصل و ارسال یک داده از یک استاد فرستنده.
برای رمزگشایی بیشتر ممکن است Encoder-Decoder نیاز داشته باشید.
رمزگذار یک مدار است که مجموعه ای از سیگنال ها را به یک کد تغییر می دهد.
رمزگشایی یک مدار است که کد را به یک مجموعه سیگنال تغییر می دهد.
اگر شما نیاز به یک Encoder / Decoder IC، می توانید از PT2262 و PT2272 استفاده کنید
این یک مثال ساده برای 1 Master Transmitter، 2 ReceiverS است و یک فرمان را از طریق Serial برای یک گیرنده ارسال می کند تا روشن / خاموش شود.
Tx code :
//simple Tx on pin D12
//Written By : Mohannad Rawashdeh
// 3:00pm , 13/6/2013
//http://www.genotronex.com/
//…………………………….
#include <VirtualWire.h>
char *controller;
void setup() {
pinMode(13,OUTPUT);
vw_set_ptt_inverted(true); //
vw_set_tx_pin(12);
vw_setup(4000);// speed of data transfer Kbps
}void loop(){
controller=”A1″ ;
vw_send((uint8_t *)controller, strlen(controller));
vw_wait_tx(); // Wait until the whole message is gone
digitalWrite(13,1);
delay(1000);
digitalWrite(13,0);
delay(1000);
controller=”B1″ ;
vw_send((uint8_t *)controller, strlen(controller));
vw_wait_tx(); // Wait until the whole message is gone
digitalWrite(13,1);
delay(1000);
digitalWrite(13,0);
delay(1000);}
First Rx
//simple Tx on pin D12
//Written By : Mohannad Rawashdeh
// 3:00pm , 13/6/2013
//http://www.genotronex.com/
//…………………………….
#include <VirtualWire.h>
void setup()
{
vw_set_ptt_inverted(true); // Required for DR3100
vw_set_rx_pin(12);
vw_setup(4000); // Bits per sec
pinMode(13, OUTPUT);vw_rx_start(); // Start the receiver PLL running
}
void loop()
{
uint8_t buf[VW_MAX_MESSAGE_LEN];
uint8_t buflen = VW_MAX_MESSAGE_LEN;if (vw_get_message(buf, &buflen)) // Non-blocking
{
if((buf[0]==’A’)&&(buf[1]==’1′)){
digitalWrite(13,1);
delay(1000);
}
}
else{
digitalWrite(13,0);
}}
Second Rx
//simple Tx on pin D12
//Written By : Mohannad Rawashdeh
// 3:00pm , 13/6/2013
//http://www.genotronex.com/
//…………………………….
#include <VirtualWire.h>
void setup()
{
vw_set_ptt_inverted(true); // Required for DR3100
vw_set_rx_pin(12);
vw_setup(4000); // Bits per sec
pinMode(13, OUTPUT);vw_rx_start(); // Start the receiver PLL running
}
void loop()
{
uint8_t buf[VW_MAX_MESSAGE_LEN];
uint8_t buflen = VW_MAX_MESSAGE_LEN;if (vw_get_message(buf, &buflen)) // Non-blocking
{
if((buf[0]==’B’)&&(buf[1]==’1′)){
digitalWrite(13,1);
delay(1000);
}
}
else{
digitalWrite(13,0);
}}
مرحله 5: سیم مجازی ….. در داخل
VirtualWire یک کتابخانه Arduino است که امکانات برای ارسال پیام کوتاه، بدون آدرس، ارسال مجدد یا تایید، کمی مانند UDP بیش از بی سیم، با استفاده از ASK (دامنه تغییر کلید) فراهم می کند. پشتیبانی از تعدادی فرستنده و گیرنده رادیو ارزان قیمت است.
پیام ها با یک مقدمه آموزش، طول پیام و چکمه ارسال می شود. پیام ها با رمزگذاری 4 تا 6 بیت برای تعادل خوب DC ارسال می شوند و یک کلمۀ CRC برای یکپارچگی پیام.
آیا می توانیم ارتباط سریال با استفاده از جواب نه است
گیرنده های ASK نیاز به انفجار پالس های آموزشی برای هماهنگ سازی فرستنده و گیرنده و همچنین نیاز به تعادل خوبی بین 0s و 1s در جریان پیام برای حفظ تعادل DC از پیام، UART ها این را ارائه نمی کند. آنها کمی با ASK بی سیم کار می کنند، اما نه به عنوان این کد.
عملکرد کامل این کتابخانه:
برای استفاده از کتابخانه VirtualWire شما باید داشته باشید
#include <VirtualWire.h>
To select the Transmitter Data Pin , void :
vw_set_tx_pin
To select the Receiver Data Pin , void :
vw_set_rx_pin
Setup the speed of transmission , The speed of Tx must be as same as On Rx .
the speed will be a Number of Bit Per Second between 0-9600 , for short distance you can use fast speed , For long distance “Up to 90m” you must use lower transmission speed as much as possible .
vw_setup(uint16_t speed);
Start the receiver PLL running ,You must do this before you can receive any messages,Call
vw_rx_start();
You must do this before you can receive any messages. When a messageis available (good checksum or not), vw_have_message() will return true.
vw_rx_stop();
Block and wait until the transmitter is idle,called :
vw_wait_tx();
Block and wait until a message is available from the receiver, call :
vw_wait_rx();
Send a message with the given length, call :
vw_send(uint8_t* buf, uint8_t len);
Returns true if an unread message is available from the receiver.,call :
vw_have_message();
Additional Information
ویژگی ها | ولتاژ ورودی: 5 ولت |
---|