Показано с 1 по 6 из 6
Like Tree2Спасибо
  • 2 Размещено UA0CID

Тема: Нужна помощь по дипломной работе

  1. #1
    Без позывного
    Регистрация
    31.10.2016
    Возраст
    26
    Сообщений
    2
    Поблагодарили
    0
    Поблагодарил
    0

    Нужна помощь по дипломной работе

    Доброго времени суток! Мне нужно рассчитать схему транзисторного ключа на полевом транзисторе помогите пожалуйста студенту-выпускнику
    Название: па.png
Просмотров: 300

Размер: 11.0 Кб
    Также нужно построить алгоритм работы по готовому скетчу двух микроконтроллеров
    1 микроконтролллер:
    #include <SPI.h>
    #include "nRF24L01.h"
    #include "RF24.h"

    RF24 radio(9, 10); // "создать" модуль на пинах 9 и 10 Для Уно
    //RF24 radio(9,53); // для Меги

    byte address[][6] = {"1Node", "2Node", "3Node", "4Node", "5Node", "6Node"}; //возможные номера труб

    byte button = 3; // кнопка на 3 цифровом
    byte potent = 0; // потенциометр на 0 аналоговом
    byte slider = 1; // движковый потенциометр на 1 аналоговом пине

    byte transmit_data[3]; // массив, хранящий передаваемые данные
    byte latest_data[3]; // массив, хранящий последние переданные данные
    boolean flag; // флажок отправки данных

    void setup() {
    Serial.begin(9600); //открываем порт для связи с ПК

    pinMode(button, INPUT_PULLUP); // настроить пин кнопки

    radio.begin(); //активировать модуль
    radio.setAutoAck(1); //режим подтверждения приёма, 1 вкл 0 выкл
    radio.setRetries(0, 15); //(время между попыткой достучаться, число попыток)
    radio.enableAckPayload(); //разрешить отсылку данных в ответ на входящий сигнал
    radio.setPayloadSize(32); //размер пакета, в байтах

    radio.openWritingPipe(address[0]); //мы - труба 0, открываем канал для передачи данных
    radio.setChannel(0x60); //выбираем канал (в котором нет шумов!)

    radio.setPALevel (RF24_PA_MAX); //уровень мощности передатчика. На выбор RF24_PA_MIN, RF24_PA_LOW, RF24_PA_HIGH, RF24_PA_MAX
    radio.setDataRate (RF24_250KBPS); //скорость обмена. На выбор RF24_2MBPS, RF24_1MBPS, RF24_250KBPS
    //должна быть одинакова на приёмнике и передатчике!
    //при самой низкой скорости имеем самую высокую чувствительность и дальность!!

    radio.powerUp(); //начать работу
    radio.stopListening(); //не слушаем радиоэфир, мы передатчик
    }

    void loop() {

    transmit_data[0] = !digitalRead(button); // инвертированный (!) сигнал с кнопки
    transmit_data[1] = map(analogRead(potent), 0, 1023, 0, 180); // получить значение
    // в диапазоне 0..1023, перевести в 0..180, и записать на 1 место в массиве
    transmit_data[2] = map(analogRead(slider), 0, 1023, 0, 255);

    for (int i = 0; i < 3; i++) { // в цикле от 0 до числа каналов
    if (transmit_data[i] != latest_data[i]) { // если есть изменения в transmit_data
    flag = 1; // поднять флаг отправки по радио
    latest_data[i] = transmit_data[i]; // запомнить последнее изменение
    }
    }

    if (flag == 1) {
    radio.powerUp(); // включить передатчик
    radio.write(&transmit_data, sizeof(transmit_data)); // отправить по радио
    flag = 0; //опустить флаг
    radio.powerDown(); // выключить передатчик
    }

    }

    2 микроконтроллер:
    #include <SPI.h>
    #include "nRF24L01.h"
    #include "RF24.h"
    #include <Servo.h>

    RF24 radio(9, 10); // "создать" модуль на пинах 9 и 10 Для Уно
    //RF24 radio(9,53); // для Меги

    byte recieved_data[3]; // массив принятых данных
    byte relay = 2; // реле на 2 цифровом
    byte servo = 3; // сервопривод на 3 цифровом
    byte mosfet = 5; // мосфет на 5 цифровом (ТУТ ЕСТЬ ШИМ!!!)

    Servo myservo;

    byte address[][6] = {"1Node", "2Node", "3Node", "4Node", "5Node", "6Node"}; //возможные номера труб

    void setup() {
    Serial.begin(9600); //открываем порт для связи с ПК

    pinMode(relay, OUTPUT); // настроить пин реле как выход
    pinMode(mosfet, OUTPUT); // настроить пин мосфета как выход

    myservo.attach(servo);

    radio.begin(); //активировать модуль
    radio.setAutoAck(1); //режим подтверждения приёма, 1 вкл 0 выкл
    radio.setRetries(0, 15); //(время между попыткой достучаться, число попыток)
    radio.enableAckPayload(); //разрешить отсылку данных в ответ на входящий сигнал
    radio.setPayloadSize(32); //размер пакета, в байтах

    radio.openReadingPipe(1, address[0]); //хотим слушать трубу 0
    radio.setChannel(0x60); //выбираем канал (в котором нет шумов!)

    radio.setPALevel (RF24_PA_MAX); //уровень мощности передатчика. На выбор RF24_PA_MIN, RF24_PA_LOW, RF24_PA_HIGH, RF24_PA_MAX
    radio.setDataRate (RF24_250KBPS); //скорость обмена. На выбор RF24_2MBPS, RF24_1MBPS, RF24_250KBPS
    //должна быть одинакова на приёмнике и передатчике!
    //при самой низкой скорости имеем самую высокую чувствительность и дальность!!

    radio.powerUp(); //начать работу
    radio.startListening(); //начинаем слушать эфир, мы приёмный модуль
    }

    void loop() {
    byte pipeNo;
    while ( radio.available(&pipeNo)) { // слушаем эфир со всех труб
    radio.read( &recieved_data, sizeof(recieved_data) ); // чиатем входящий сигнал
    digitalWrite(relay, recieved_data[0]); // подать на реле сигнал с 0 места массива
    //то бишь 0 или 1
    myservo.write(recieved_data[1]); // повернуть серво на угол 0..180
    // значение получено с 1 элемента массива
    analogWrite(mosfet, recieved_data[2]); // подать на мосфет ШИМ сигнал
    // в соответствии с принятыми данными со 2 места массива, диапазон 0...255
    }
    }


  2. #2
    Silent Key
    Регистрация
    07.12.2011
    Адрес
    Кустанай
    Возраст
    55
    Сообщений
    2,307
    Поблагодарили
    4015
    Поблагодарил
    1185
    Цитата Сообщение от Баян Тілеш Посмотреть сообщение
    помогите пожалуйста студенту-выпускнику
    Это как в анекдоте про диплом и барана! Учился? Думай сам!

  3. #3
    Very High Power
    Регистрация
    21.06.2010
    Адрес
    г.Волжский Волгоградской обл
    Возраст
    69
    Сообщений
    4,998
    Поблагодарили
    1744
    Поблагодарил
    5308
    "...Тётенька дайте попить, а то так есть хочется, что аж переночевать негде..." Возможно, и Ваш препод тоже на форуме бывает...

  4. #4
    Простой любитель телеграфа. Аватар для UA0CID
    Регистрация
    20.09.2013
    Адрес
    Комсомольск-на-Амуре
    Возраст
    53
    Сообщений
    4,391
    Поблагодарили
    5419
    Поблагодарил
    3867
    Доброго времени суток! Мне нужно рассчитать схему транзисторного ключа на полевом транзисторе помогите пожалуйста студенту-выпускнику
    Нет слов............ И это наши кадры будущего РОССИИ, с такими- будущего нет. Как говорил И.В. Сталин-кадры решают всё!!!!! Эти кадры не х.......на не решают.
    Печально.
    Господь подарил нам Cэмюэля МОРЗЕ, лентяи SSB, а черти подарили нам (вернее вам) FT8. Олег UA0CID 73!

  5. #5
    QRP
    Регистрация
    02.02.2016
    Возраст
    31
    Сообщений
    44
    Поблагодарили
    12
    Поблагодарил
    7
    Цитата Сообщение от UA0CID Посмотреть сообщение
    Нет слов............ И это наши кадры будущего РОССИИ, с такими- будущего нет. Как говорил И.В. Сталин-кадры решают всё!!!!! Эти кадры не х.......на не решают.
    Печально.
    Судя по ник нейму он с Украины. Поэтому не кадр России.

  6. #6

Похожие темы

  1. Нужна помощь или совет по антенне Delta
    от RW3LY в разделе Антенномания
    Ответов: 25
    Последнее сообщение: 04.03.2017, 13:52
  2. Нужна помощь с почтой.
    от UV7IQ в разделе Беседка. Для любителей поговорить.
    Ответов: 1
    Последнее сообщение: 07.12.2016, 13:41
  3. Нужна помощь (БП)
    от Дмитрий 1974 в разделе Источники питания
    Ответов: 12
    Последнее сообщение: 28.09.2016, 14:42
  4. Ответов: 9
    Последнее сообщение: 15.06.2016, 00:12
  5. Помогите: Станислав RY2S: срочно нужна помощь
    от LA7NET в разделе SOS
    Ответов: 107
    Последнее сообщение: 27.05.2016, 04:59

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •  
Похоже, что вы используете блокировщик рекламы :(
Форум QRZ.RU существует только за счет рекламы, поэтому мы были бы Вам благодарны если Вы внесете сайт в список исключений!
как отключить
×
Рейтинг@Mail.ru
eXTReMe Tracker
Яндекс.Метрика