能2公里无线遥控的2.4GHz遥控器

工具:
焊枪+焊锡
焊接夹具
螺丝刀
胶水
遥控器(发射器):
1 x nrf24l01+pa+lna 2.4g发射接收通信模块
1 x 24l01无线模块转接板
1 x arduino nano板
1 x 100nf 100纳法电容
2 x双轴按键传感器
2 x 2档摇臂开关
1 x 7.4v 460mah锂电池
1 x 330r电阻
1 x 10k电位器
2 x 15p 2.54mm单排排针插座
1 x 54mm x 20mm pcb板
1 x 7-9v的电池或者 1x 6节五号电池盒跟电池
若干:pcb板、电线、螺丝
// 8 channel transmitter (no trim) | 8 kanal verici (trim yok)// input pin a5 #include #include #include const uint64_t pipeout = 000322; // note: the same as in the receiver 000322 | alıcı kodundaki adres ile aynı olmalı rf24 radio(9, 10); // select ce,csn pin | ce ve csn pinlerin seçimi struct signal { byte throttle; byte pitch; byte roll; byte yaw; byte aux1; byte aux2; byte aux3; byte aux4;}; signal data; void resetdata(){ data.throttle = 0; data.pitch = 127; data.roll = 127; data.yaw = 127; data.aux1 = 0; // signal lost position | sinyal kesildiğindeki pozisyon data.aux2 = 0; data.aux3 = 0; data.aux4 = 0;} void setup(){ //configure the nrf24 module | nrf24 modül konfigürasyonu radio.begin(); radio.openwritingpipe(pipeout); radio.setautoack(false); radio.setdatarate(rf24_250kbps); // the lowest data rate value for more stable communication | daha kararlı iletişim için en düşük veri hızı. radio.setpalevel(rf24_pa_max); // output power is set for maximum | çıkış gücü maksimum için ayarlanıyor. radio.stoplistening(); // start the radio comunication for transmitter | verici için sinyal iletişimini başlatır. resetdata();} // joystick center and its borders | joystick merkez ve sınırları int border_map(int val, int lower, int middle, int upper, bool reverse){ val = constrain(val, lower, upper); if ( val < middle ) val = map(val, lower, middle, 0, 128); else val = map(val, middle, upper, 128, 255); return ( reverse ? 255 - val : val );} void loop(){ // control stick calibration for channels | her bir kanal için kumanda kol kalibrasyonları data.roll = border_map( analogread(a3), 0, 512, 1023, true ); // true or false for signal direction | true veya false sinyal yönünü belirler data.pitch = border_map( analogread(a2), 0, 512, 1023, true ); data.throttle = border_map( analogread(a1),570, 800, 1023, false ); // for single side esc | tek yönlü esc için // data.throttle = border_map( analogread(a1),0, 512, 1023, false ); // for bidirectional esc | çift yönlü esc için data.yaw = border_map( analogread(a0), 0, 512, 1023, true ); data.aux1 = border_map( analogread(a4), 0, 512, 1023, true ); // true or false for change signal direction | true veya false sinyal yönünü değiştirir. data.aux2 = border_map( analogread(a5), 0, 512, 1023, true ); // true or false for change signal direction | true veya false sinyal yönünü değiştirir. data.aux3 = digitalread(7); data.aux4 = digitalread(8); radio.write(&data, sizeof(signal));}
// 8 channel transmitter & trims | 8 kanal verici ve trimler #include #include #include #include const uint64_t pipeout = 000322; // note: the same as in the receiver 000322 | alıcı kodundaki adres ile aynı olmalı rf24 radio(9, 10); // select ce,csn pin | ce ve csn pinlerin seçimi #define trimbut_1 1 // trim button 1 / pin d1 #define trimbut_2 2 // trim button 2 / pin d2 #define trimbut_3 3 // trim button 3 / pin d3 #define trimbut_4 4 // trim button 4 / pin d4 #define trimbut_5 5 // trim button 5 / pin d5 #define trimbut_6 6 // trim button 6 / pin d6 int tvalue1 = eeprom.read(1) * 4; // reading trim values from eprom | trim değerlerinin epromdan okunması int tvalue2 = eeprom.read(3) * 4; int tvalue3 = eeprom.read(5) * 4; struct signal { byte throttle; byte pitch; byte roll; byte yaw; byte aux1; byte aux2; byte aux3; byte aux4;}; signal data; void resetdata(){ data.throttle = 512; // signal lost position | sinyal kesildiğindeki pozisyon data.pitch = 127; data.roll = 127; data.yaw = 127; data.aux1 = 0; data.aux2 = 0; data.aux3 = 0; data.aux4 = 0;} void setup(){ // configure the nrf24 module | nrf24 modül konfigürasyonu radio.begin(); radio.openwritingpipe(pipeout); radio.setautoack(false); radio.setdatarate(rf24_250kbps); // the lowest data rate value for more stable communication | daha kararlı iletişim için en düşük veri hızı. radio.setpalevel(rf24_pa_max); // output power is set for maximum | çıkış gücü maksimum için ayarlanıyor. radio.stoplistening(); // start the radio comunication for transmitter | verici için sinyal iletişimini başlatır. resetdata(); pinmode(trimbut_1, input_pullup); pinmode(trimbut_2, input_pullup); pinmode(trimbut_3, input_pullup); pinmode(trimbut_4, input_pullup); pinmode(trimbut_5, input_pullup); pinmode(trimbut_6, input_pullup); tvalue1= eeprom.read(1) * 4; tvalue2= eeprom.read(3) * 4; tvalue3= eeprom.read(5) * 4;}// joystick center and its borders | joystick merkez ve sınırları int border_map(int val, int lower, int middle, int upper, bool reverse){ val = constrain(val, lower, upper); if ( val 1000 ) {resetdata(); // signal lost.. reset data | sinyal kayıpsa data resetleniyor}ch_width_1 = map(data.roll, 0, 255, 1000, 2000);ch_width_2 = map(data.pitch, 0, 255, 1000, 2000);ch_width_3 = map(data.throttle, 0, 255, 1000, 2000);ch_width_4 = map(data.yaw, 0, 255, 1000, 2000);ch_width_5 = map(data.aux1, 0, 255, 1000, 2000);ch_width_6 = map(data.aux2, 0, 255, 1000, 2000);ch_width_7 = map(data.aux3, 0, 1, 1000, 2000);ch_width_8 = map(data.aux4, 0, 1, 1000, 2000);ch1.writemicroseconds(ch_width_1); // write the pwm signal | pwm sinyaller çıkışlara gönderiliyorch2.writemicroseconds(ch_width_2);ch3.writemicroseconds(ch_width_3);ch4.writemicroseconds(ch_width_4);ch5.writemicroseconds(ch_width_5);ch6.writemicroseconds(ch_width_6);ch7.writemicroseconds(ch_width_7);ch8.writemicroseconds(ch_width_8);}
9v稳压器:
1 x 7809三级稳压管
1 x 1uf 微法电容
1 x 10uf微法电容
2 x 100nf 纳法电容
若干:pcb板、电线
5v稳压器:
1 x 7805三级稳压管
1 x 1uf 微法电容
1 x 10uf微法电容
2 x 100nf 纳法电容
若干:pcb板、电线

光伏逆变器常见故障及处理方法
MBA毕业生新选择:创业孵化器
关于华为海思的处理器研发逻辑分析介绍
外行控诉,和舰科技被指科创板欺诈上市!内行的你怎么看?
独孤求败的苹果 没有一家公司综合实力可媲美苹果
能2公里无线遥控的2.4GHz遥控器
汉克森过滤器系列介绍
拜腾汽车与富士康合力加速推进拜腾首款车型M-Byte的量产制造工作
X-RAY检测设备替代人工检测已经成为当前锂电池生产制造的必然趋势
虚拟/增强现实产业通过云储存+数字货币的区块链的模式来获取资源
Linux系统开机和启动过程
如何判断永磁电机是否失磁?如何能保持永磁电机不失磁
2017大盘点|苹果过去一年都做了些什么?_苹果要把iPhone、Mac应用合并
浪潮信息智能研发获《哈佛商业评论》鼎革奖 开启服务器个性化定制时代
PCB电路板板材质量级别的划分及参数介绍
小米曲面显示器34英寸问世,性能表现很优异
纳米尺度调整太阳能电池
哀歌!中国最大MEMS企业歌尔被苹果要求暂停代工!33亿订单转手!
美对华光伏“双反”终裁落地 商务部强烈不满
作永久性连接时,螺栓螺母应该如何使用?