Уважаемые посетители! Форум CQHAM.RU существует исключительно за счет показа рекламы. Мы будем благодарны, если Вы не будете блокировать рекламу на нашем Форуме. Просим внести cqham.ru в список исключений для Вашего блокировщика рекламы.
Страница 43 из 101 ПерваяПервая ... 33404142434445465393 ... ПоследняяПоследняя
Показано с 421 по 430 из 1005

Тема: Индикатор лампового УМ на Arduino nano 3 и LCD 2004

  1. #421

    Регистрация
    12.05.2016
    Адрес
    Краснодарский край
    Сообщений
    65
    всем здрасте. Сергей еще вопрос по тандем матчу. как сказывается количество витков на его работу. вобщем калибрую на мощности 400 ватт. перехожу на 100ватт . ксв и мощность занижаются ксв на 0.3 мощность ватт на 15. если калибрую на 100ватт . ксв и мощность завышаются причем уже гораздо больше.


  2. #422
    Аватар для Integral
    Регистрация
    08.02.2007
    Адрес
    г. Снежное
    Сообщений
    2,926
    Записей в дневнике
    1
    Позывной
    UT0IS/D0ISM
    Влияние уровня мощности на показания КСВ есть всегда, от этого никуда не уйдешь. Поэтому калибруйте на той мощности на которой чаще всего работаете или можно откалибровать на среднем значении. Тогда врать будет одинаково что на малой мощности, что на большой. Есть другой вариант, использовать кольца Амидон. На них датчик работает лучше. Ну и вариант с компенсацией, подключается конденсатор 10-47пФ параллельно одному резистору 51Ом. Возможно удастся улучшить показания КСВ от влияния мощности.
    Интеграл от человеческих заблуждений - истина, производная - безумие.

  3. #423
    Аватар для RK9AMX
    Регистрация
    26.03.2005
    Адрес
    Челябинск, MO05RE
    Сообщений
    1,341
    Записей в дневнике
    20
    Позывной
    RK9AMX
    Цитата Сообщение от Integral Посмотреть сообщение
    Но я бы сделал еще лучше, сделал бы проверку на наличие ответа серийного порта, если ответ есть (кабель подключен) уходим в подпрограмму settings_uart(). Если ответа нет (USB кабель не подключен) , уходим на заставку и запуск основной программы.
    Не совсем понял, про какую проверку идет речь... Опишу алгоритм работы по UART.
    При нажатии кнопки "Connect" открывается выбранный COM-порт. И туда засылается в течение 15 сек, с периодичностью 100 мс, команда 'ID;'.
    Если ответ "ID200;' не пришёл, то выводится ошибка "нет соединения" и COM-порт закрывается.
    Если в течение 15 сек. пришёл ответ 'ID200;', то прекращается отправка команды "ID;" и внешняя утилита переходит в режим приёма/передачи следующих команд.


    Что происходит с девайсом... При открытии COM-порта на выводе DTR происходит переключение состояний и контроллер перезагружается.
    Далее запускается микропрограмма. Тут есть тонкий момент, нужно за 15 секунд сконфигурировать контроллер на прием/передачу данных по UART.
    Принять команду от внешней утилиты и ответить на неё. В целом ничего сложного, но этот момент нужно предусмотреть в алгоритме микропрограммы.


    Тут возможны варианты алгоритмов:


    1 вариант. Нынешний. После открытия COM-порта перезагружается контроллер. Мы предусмотрительно зажимаем кнопку на девайсе и тем самым активируем RX/TX по UART.
    2 вариант. Можно сделать 2 отдельных кнопки во внешней утилите. Кнопка 1 - 'Open PORT'. Кнопка 2 - 'Connect'. Кнопка 1 открывает COM-порт (девайс перезагружается). Сразу активируется UART и девайс ждет N-сек команды от внешней утилиты. Поступила команда, информируем на LCD и т.п. Не поступила, по истечении N-сек активируем основной алгоритм.
    3 вариант. Те же 2 кнопки во внешней утилите. После перезагрузки девайса запускается основной алгоритм. Если нужно провести настройку, то на девайсе проводим манипуляции с кнопками (пункты меню или просто определённое нажатие) и включаем режим UART. Раз у нас 2 кнопки, то можно их одновременное нажатие в течение 3-5 сек считать переходом в режим RX/TX UART.
    4 вариант. To All, предложите ваш вариант.


    Сделать две кнопки не проблема. Бака-ёкэ предусмотрю, чтоб вначале COM-порт нужно было открыть. И только после этого засылать в него команду на подключение.
    Цитата Сообщение от Integral Посмотреть сообщение
    Нужно будет в интерфейсе внешней программы изменить допустимые параметры, я расширил некоторые пределы и округлил до целых чисел. Например максимальная мощность была 100 ... 9999, стала 100 ... 10000. Это было связано с количеством знакомест, последнее знакоместо был пробел. И он при максимальном значении затирал соседние символы. Плюс кривое значение 9999 не вяжется с минимальным шагом 100, в итоге значение параметров получалось 9899, 9799 и т.д. Я решил эту проблему, поэтому значения должны быть кратны минимальному значения шага.
    Сергей, не проблема. Скажите откуда правильные данные взять. Мне пару цифр поменять не трудно. А вот вывод на LCD ограничен. От этого и нужно плясать. В целом записать данные можно и в 32-х битном представлении, если это понадобится.


    ...
    Кстати, ни у кого не возникло желания проверить работу датчиков тока INA219 в реальном усилителе? На стенде работает, но нужно "полевые" испытания проводить. Иначе это так и останется проектом...
    Последний раз редактировалось RK9AMX; 30.01.2020 в 09:49. Причина: Очепятки
    Сомнения могут быть устранены только опытом.

  4. #424
    Аватар для RK9AMX
    Регистрация
    26.03.2005
    Адрес
    Челябинск, MO05RE
    Сообщений
    1,341
    Записей в дневнике
    20
    Позывной
    RK9AMX
    Integral,
    Дополнил скетч комментариями на процедуру обмена по UART.
    Вложения Вложения
    Сомнения могут быть устранены только опытом.

  5. #425
    Аватар для Integral
    Регистрация
    08.02.2007
    Адрес
    г. Снежное
    Сообщений
    2,926
    Записей в дневнике
    1
    Позывной
    UT0IS/D0ISM
    Цитата Сообщение от RK9AMX Посмотреть сообщение
    Не совсем понял, про какую проверку идет речь...
    Была идея такая, если подключен USB шнур, загрузка контроллера доходит до проверки возможности приема/передачи и тормозит дальнейшую загрузку. Контроллер ждет информацию от внешней программы. Если питание на контроллер подано от внешнего источника питания, а не по USB, то программа "проскакивает" дальше и грузит заставку, потом режим Bypass и т.д. У нас бы появилось автоматическое определение, что мы собираемся делать конфигурацию по внешней программе.
    Я пытался решить эту задачу простой проверкой
    Код:
    if (Serial){
    Но программа всегда тормозится на этой строке, даже если USB кабель не подключен. Пока оставил эту затею.
    Цитата Сообщение от RK9AMX Посмотреть сообщение
    Тут есть тонкий момент, нужно за 15 секунд сконфигурировать контроллер на прием/передачу данных по UART.
    Принять команду от внешней утилиты и ответить на неё. В целом ничего сложного, но этот момент нужно предусмотреть в алгоритме микропрограммы.
    А вот тут как раз все нормально, я по 5-10 минут держал контроллер и компьютер соединенными, связь не отваливается!!!
    Цитата Сообщение от RK9AMX Посмотреть сообщение
    Дополнил скетч комментариями на процедуру обмена по UART.
    И внес ошибку, зацепил скобку. Не компилируется. Исправил.
    Вложения Вложения
    Интеграл от человеческих заблуждений - истина, производная - безумие.

  6. Спасибо от RK9AMX

  7. #426
    Аватар для Integral
    Регистрация
    08.02.2007
    Адрес
    г. Снежное
    Сообщений
    2,926
    Записей в дневнике
    1
    Позывной
    UT0IS/D0ISM
    Цитата Сообщение от RK9AMX Посмотреть сообщение
    Скажите откуда правильные данные взять. Мне пару цифр поменять не трудно.
    Можно отсюда, я красным написал. Хотя я не представляю, какие могут быть токи анодов при 10000В и мощности 10000Вт
    Так же я поднял ток сеток до 2000мА, понимаю что в каскаде с ОС они большие, но насколько мне не известно. Космические значения тоже ни к чему.

    Нажмите на изображение для увеличения. 

Название:	Диапазон значений.JPG 
Просмотров:	178 
Размер:	108.2 Кб 
ID:	328940

    Добавлено через 52 минут(ы):

    Сделал видео, демонстрация режима Bypass и конфигурация параметров при помощи программы Владислава RK9AMX, смотрим тут.
    Последний раз редактировалось Integral; 30.01.2020 в 22:52.
    Интеграл от человеческих заблуждений - истина, производная - безумие.

  8. Спасибо от RK9AMX

  9. #427
    Аватар для RK9AMX
    Регистрация
    26.03.2005
    Адрес
    Челябинск, MO05RE
    Сообщений
    1,341
    Записей в дневнике
    20
    Позывной
    RK9AMX
    Цитата Сообщение от Integral Посмотреть сообщение
    Была идея такая, если подключен USB шнур, загрузка контроллера доходит до проверки возможности приема/передачи и тормозит дальнейшую загрузку. Контроллер ждет информацию от внешней программы. Если питание на контроллер подано от внешнего источника питания, а не по USB, то программа "проскакивает" дальше и грузит заставку, потом режим Bypass и т.д. У нас бы появилось автоматическое определение, что мы собираемся делать конфигурацию по внешней программе.
    Я пытался решить эту задачу простой проверкой
    Понятно, попробую реализовать. Только простой проверкой тут не обойтись. Нужно проверять в течение какого-то времени... В общем попробую пару идей.
    Цитата Сообщение от Integral Посмотреть сообщение
    И внес ошибку
    Упс, прошу прощения, не компилировал перед отправкой. Думал комменты и без проверки можно оставить. Спасибо что исправили. Учту этот момент на будущее.
    Цитата Сообщение от Integral Посмотреть сообщение
    Можно отсюда, я красным написал.
    Принято, исправлю
    Сомнения могут быть устранены только опытом.

  10. #428
    Аватар для RK9AMX
    Регистрация
    26.03.2005
    Адрес
    Челябинск, MO05RE
    Сообщений
    1,341
    Записей в дневнике
    20
    Позывной
    RK9AMX

    Lamp Control Settings Utility v.1.0.1 CG

    Внес исправления, предложенные Сергеем, в утилиту. Новая версия 1.0.1 CG.
    Перед установкой новой версии утилиты предыдущую нужно удалить. Удаляется через панель управления > программы и компоненты (W7).
    Настроил установщик для добавления ярлыков в меню "Пуск". Теперь деинсталлировать программу можно не заходя в панель управления.
    Добавил краткое описание работы с утилитой (ярлык в меню "Пуск").
    ......

    To Integral: Сергей, под катом вариант входа в режим конфигурации.
    Работает следующим образом. При включении в течение 3 сек микропрограмма проверяет буфер UART на наличие не принятых данных.
    Если никакие данные не поступили, то продолжается обычная работа алгоритма. Если данные поступили, то переходим в режим конфигурации.
    При нажатии кнопки 'Connect' в утилите, контроллер перезагружается и переходит в режим конфигурации. Повторное нажатие кнопки выводит контроллер из режима конфигурации и продолжается работа основного алгоритма.
    Если ещё раз нажать кнопку 'Connect', то контроллер снова перезагрузится и т.д. Т.е. никаких дополнительных манипуляций с кнопками на девайсе проводить не надо.
    Алгоритм у себя проверил, но в предыдущей версии скетча (это не принципиально).

    В качестве развития этой идеи... Проверку буфера UART можно проводить в процессе вывода заставки. Вместо Delay занимать время контроллера полезной работой.
    Но я пока детально не разбирался с реализацией этой идеи.


    Скрытый текст

    Код:
    ...
    #define UART_CONNECT_TIME 3000 // Время ожидания подключения по UART, мс
    ...
    
    
    uint32_t last_uart_time;
    
    
    ...
    
    
    
    
    void setup(){
    ...
    
    
    /*Вход в режим настройки*/
        Serial.begin(9600); // удалить эту строку из процедуры settings_uart();
        lcd.setCursor(0, 0);
        lcd.print("  PC Connecting...  ");
        last_uart_time = millis();
        while (millis() - last_uart_time < UART_CONNECT_TIME) {
          if (Serial.available() > 0) {
            lcd.setCursor(0, 0);
            lcd.print(" Configuration Mode ");
            lcd.setCursor(0, 1);
            lcd.print(" Connecting to PC...");
            settings_uart();      
          }
        }
        lcd.clear();
        
    ...
    }

    Вложения Вложения
    • Тип файла: zip Setup.zip (1.27 Мб, Просмотров: 112)
    Сомнения могут быть устранены только опытом.

  11. Спасибо от Integral

  12. #429
    Аватар для Integral
    Регистрация
    08.02.2007
    Адрес
    г. Снежное
    Сообщений
    2,926
    Записей в дневнике
    1
    Позывной
    UT0IS/D0ISM
    Цитата Сообщение от RK9AMX Посмотреть сообщение
    Новая версия 1.0.1 CG.
    Проверил автоматическое подключение. Работает с версией 1.0.9.2, там где стандартная библиотека последовательного порта Serial. С версией 1.0.9.3 работать отказалась, там библиотека порта GyverUART.h
    Поэтому мысли следующие, хоть библиотека Serial занимает больше места, но удобство в подключении здесь выше. Разница в занимаемой памяти 51% и 53% небольшая. Поэтому буду переносить все изменения из 1.0.9.3 в 1.0.9.2 и заодно исправлю значения по допустимым параметрам в меню настроек.
    Предыдущие версии с нажатием кнопки так же работают с версией утилиты 1.0.1 CG.
    Интеграл от человеческих заблуждений - истина, производная - безумие.

  13. Спасибо от RK9AMX


  14. #430
    Аватар для Integral
    Регистрация
    08.02.2007
    Адрес
    г. Снежное
    Сообщений
    2,926
    Записей в дневнике
    1
    Позывной
    UT0IS/D0ISM
    Все-таки я победил 1.0.9.3CG, новая версия 1.0.9.4CG в Облаке. Продолжаю тестировать дальше.
    Интеграл от человеческих заблуждений - истина, производная - безумие.

  15. Спасибо от RK9AMX, UA7F

Страница 43 из 101 ПерваяПервая ... 33404142434445465393 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Контроллер на Arduino NANO и индикаторе WH1602 для транзисторного УМ
    от D0ITC в разделе Конструкции на микроконтроллерах для радиолюбителей
    Ответов: 18
    Последнее сообщение: 16.01.2024, 10:20
  2. ad9952+arduino nano
    от greekk в разделе Конструкции на микроконтроллерах для радиолюбителей
    Ответов: 5
    Последнее сообщение: 13.06.2019, 12:31
  3. Si5351 arduino nano cw передатчик
    от Tlg в разделе Для начинающих
    Ответов: 4
    Последнее сообщение: 18.04.2019, 16:46
  4. Arduino nano v3+ad9850 cw transmitter
    от Tlg в разделе Для любителей QRP и QRPP
    Ответов: 15
    Последнее сообщение: 09.01.2019, 21:42
  5. Контроллер на Arduino NANO и индикаторе WH1602 для транзисторного УМ
    от в разделе Конструкции на микроконтроллерах для радиолюбителей
    Ответов: 0
    Последнее сообщение: 01.01.1970, 03:00

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •