نحوه تست و راه اندازی ماژول RF ASk فرستنده و گیرنده
در این آموزش از ساخت پروژه نحوه تست و راه اندازی ماژول RF ASK با اردوینو را اموزش خواهیم داد این ماژول ها در دو فرکانس 315 مگاهرتز و 433 مگاهرتز موجود هستند و عمده ترین کاربردهای ماژول های گیرنده و فرستنده های ASK در ریموت کنترلرهای درب های اتوماتیک و سیستم های امنیتی ، دزدگیر منازل و خودرو هست.
پین های ماژول RF فرستنده و گیرنده
ماژول فرستنده
- پین DATA داده های دیجیتالی را برای انتقال می پذیرد.
- پین VCC ولتاژ را برای فرستنده تأمین می کند. این می تواند ولتاژ DC مثبت بین 3.5 ولت تا 12 ولت باشد. توجه داشته باشید که خروجی RF متناسب با ولتاژ تغذیه است ، یعنی هرچه ولتاژ بیشتر باشد ، دامنه بیشتر خواهد بود.
- پین GND پایه زمین است.
- پین antenna یک پایه برای آنتن خارجی است.
ماژول گیرنده
- پین VCC ولتاژ را برای گیرنده تأمین می کند. برخلاف فرستنده ، ولتاژ منبع تغذیه برای گیرنده باید 5 ولت باشد.
- پین های DATA داده های دیجیتالی دریافت شده را تولید می کنند. دو پایه مرکزی به طور داخلی به هم متصل هستن ، بنابراین می توانید از هر یک برای خروج داده استفاده کنید.
- پین GND یک پایه زمین است.
- پین antenna یک پین برای آنتن خارجی است که اغلب بدون علامت است. این پد در سمت چپ پایین ماژول ، درست کنار سیم پیچ کوچک است.
شماتیک تست و راه اندازی ماژول RF ASk فرستنده
طبق شماتیک زیر مدار فرستنده را روی بردپورد ببندید
ماژول فرستنده | اردوینو |
---|---|
پین DATA | پین 12 اردوینو |
پین VCC | پین 5 ولت اردوینو |
پین GND | پین GND اردوینو |
شماتیک تست و راه اندازی ماژول RF ASk گیرنده
طبق شماتیک زیر مدار گیرنده را روی بردپورد ببندید
ماژول گیرنده | اردوینو |
---|---|
پین DATA | پین 11 اردوینو |
پین VCC | پین 5 ولت اردوینو |
پین GND | پین GND اردوینو |
و بعد از اینکه مدار های بالا را روی بردبود بستید باید اردوینو را توسط کد هایی که در ادامه در اختیارتون میزاریم پروگرام کنید
کتابخانه ماژول فرستنده و گیرنده RF ASK
برای اپلود کد روی اردوینو ابتدا باید کتابخانه ماژول را در اردوینو داشته باشید از قسمت دانلود در پایین میتوانید کتابخانه را دانلود کنید
کد ماژول فرستنده
کد زیر را کپی کنید و در نرم افزار اردوینو پیست کنید و برای ماژول فرستنده پروگرام کنید
#include <RH_ASK.h>
#include <SPI.h>
RH_ASK rf_driver;
void setup()
{
rf_driver.init();
}
void loop()
{
const char *msg = "Module test"; //در اینجا میتوانید متن Module test را عوض کنید و هر متنی را قرار دهید
rf_driver.send((uint8_t *)msg, strlen(msg));
rf_driver.waitPacketSent();
delay(1000);
}
در قسمت const char *msg = “Module test” شما میتوانید متن Module test عوض کنید و هر متنی قرار دهید
کد ماژول گیرنده
کد زیر را کپی کنید و در نرم افزار اردوینو پیست کنید و برای ماژول گیرنده پروگرام کنید
#include <RH_ASK.h>
#include <SPI.h>
RH_ASK rf_driver;
void setup()
{
rf_driver.init();
Serial.begin(9600);
}
void loop()
{
uint8_t buf[11];
uint8_t buflen = sizeof(buf);
if (rf_driver.recv(buf, &buflen))
{
Serial.print("Message Received: ");
Serial.println((char*)buf);
}
}
بعد اپلود کد سریال مانیتور اردوینو ایی که ماژول گیرنده بهش متصل هست رو اجرا کنید سرعت سریال مانیتور را روی 9600 قرار دهید و بعد در صورتی که ماژول ها سالم باشند مانند تصویر زیر عبارت Module test را در سریال مانیتور اردوینو نمایش می دهد
امیدوار که مطالب تست و راه اندازی ماژول ask با اردوینو برایتان مفید بوده باشه