Пятница, 29.11.2024, 13:28
Радиосервис - ИЗМАИЛ

Меню сайта

Статистика
Форма входа
Друзья сайта

Форум поддержки программ "Tiny Tools" (CPLD/USB-S/USB-F/USB-SPI EJTAG Tiny Tools)

Электроника на KitPost
Поиск
Наш опрос
Оцените мой сайт
1. Отлично
2. Хорошо
3. Неплохо
4. Ужасно
5. Плохо
Всего ответов: 86
Ссылки по uCoz
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • [ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
    Модератор форума: mvm_ksaa  
    ИК станция от mvm_ksaa
    mvm_ksaa
    Дата: Пятница, 24.11.2017, 13:33 | Сообщение # 1        
    Подполковник
    Группа: Модераторы
    Сообщений: 173
    Статус: Offline

    Проект закрыт, не совсем закончен, автор не дорабатывает, воспроизводить проект можете на своё усмотрение.

    Инфракрасная паяльная станция на Arduino Uno + AD7705, управляется через программу с компьютера


    Шилд в формате Sprint-Layout60 можно скачать здесь https://cloud.mail.ru/public/Eg3v/43qzcV7aT
    Скетч для Arduino можно скачать здесь https://cloud.mail.ru/public/2Q35/koTjzpLiG
    Скачать программу для Windows X32 можно здесь https://cloud.mail.ru/public/6SmE/pvpzzb2kS
    Скачать программу для Windows X64 можно здесь https://cloud.mail.ru/public/MBeG/ybAQNX7n6
    Скетч для Arduino-Pro-Mini для управления вентилятором охлаждения https://cloud.mail.ru/public/ESKm/68cN4assT

    Шилд от Cinema: https://cloud.mail.ru/public/ByGm/BbFr4VUQV
    Версия программы с корректировкой температур и увеличенным графиком https://cloud.mail.ru/public/LVi1/PS3rs9qvJ
    В версии программы 2.2.1 добавлена возможность для работы с USB микроскопом

    Программа IRSolder64X скачать
    Программа IRSolder32X скачать
    Ссылки которые публиковались походу обсуждений в теме могут не сработать, просьба брать отсюда!!!


    Сообщение отредактировал mvm_ksaa - Вторник, 14.08.2018, 05:29
     

    mvm_ksaa
    Дата: Вторник, 17.11.2020, 04:19 | Сообщение # 196        
    Подполковник
    Группа: Модераторы
    Сообщений: 173
    Статус: Offline

    Cinema, ну скажем так не забросил, просто собрал, доработал свой вариант до рабочего состояния, работает, ну и работает, другие проекты времени не оставляют играться со станцией бесконечно))) Может в настройках сделать переменную таймера опроса, но тогда и передаваемая информация на ардуино, на шим, будет с той же задержкой?
     

    mvm_ksaa
    Дата: Вторник, 17.11.2020, 04:20 | Сообщение # 197        
    Подполковник
    Группа: Модераторы
    Сообщений: 173
    Статус: Offline

    Ещё-бы библиотеки вспомнить какие использовал))))))
     

    Cinema
    Дата: Вторник, 17.11.2020, 11:11 | Сообщение # 198        
    Генерал-майор
    Группа: Проверенные
    Сообщений: 618
    Статус: Offline

    Цитата mvm_ksaa ()
    но тогда и передаваемая информация на ардуино, на шим, будет с той же задержкой?
    Спасибо, что ответили!
    Если возможно привязать один замер температуры к одному расчету ПИД. Сеансы приёма-передачи между софтом и скетчем следует запускать чаще, чем 4 раза в секунду (оптимальная задержка между опросами MAX6675 - 240-250ms). Есть смысл синхронизировать их с прерыванием по таймеру (или от схемы ZCC) в скетче. - будет вообще отлично.
    По поводу задержки управляющего выходами сигнала, - можно ввести в скетч диммер по Брезенхему с прерыванием по таймеру. Примерно, как это могло-бы выглядеть на стороне скетча, можно посмотреть здесь (к большей части кода добавил комментарии) :
    
    Код
    //Редактирование Cinema 16/11/2020
    //Попытка перевода станцию на более распространенные датчики - термопары K-Type.
    //задержка между опросами MAX6675 по даташиту больше 170ms, иначе могут считываться некорректные данные.
    //но с такой задержкой невозможна работа с софтом :(
    //Попытка перевода управления выходами на диммер по Брезенхему
    //Попытка прикрутить прерывание по таймеру вместо прерывания по ZCC

    //библиотеки
    //#include <AD770X.h>
    //AD770X ad7706(2.5);
    //#include <Wire.h>
    //#include <string.h>
    #include <MsTimer2.h>                           //вместо прерывания от ZCC
    #include <LiquidCrystal_I2C.h>                  //дисплей
    //LiquidCrystal_I2C lcd(0x27, 16, 2);
    LiquidCrystal_I2C lcd(0x3f, 16, 2);             //у моего дисплея адрес 0x3f
    #include <max6675.h>                            //преобразователи сигнала термопар

    //---секция алгоритма Брезенхема---//
    int er1 = 1;                    //переменная для расчета переполнения в алгоритме Брезенхема для ВИ
    int er2 = 1;                    //переменная для расчета переполнения в алгоритме Брезенхема для НИ
    int reg1;                    //промежуточная переменная для алгоритма Брезенхема для ВИ
    int reg2;                    //промежуточная переменная для алгоритма Брезенхема для НИ
    boolean out1;                    //выход импульса управления ВИ алгоритма Брезенхема
    boolean out2;                    //выход импульса управления НИ алгоритма Брезенхема
    #define SENSOR_SAMPLING_TIME 250                //частота чтения температуры и пересчёта ПИД(милисекунды)

    //пины подключения
    //назначаем пины преобразователей термопар
    #define thermoDO  6                             //DO=(SO)
    #define thermoCLK  7                            //SCK=(CLK)
    #define thermoCS  8                             //CS MAX6675 "ВЕРХНЕГО" нагревателя
    #define thermoCS2  9                            //CS MAX6675 "НИЖНЕГО" нагревателя
    MAX6675 thermocouple1(thermoCLK, thermoCS, thermoDO);
    MAX6675 thermocouple2(thermoCLK, thermoCS2, thermoDO);
    #define RelayPin1 12                            //назначаем пин "ВЕРХНЕГО" нагревателя
    #define RelayPin2 11                            //назначаем пин "НИЖНЕГО" нагревателя
    #define buzzerPin 10                            //назначаем пин пищалки
    #define EnableTop 2                             //индикатор включения "ВЕРХНЕГО" нагревателя
    #define EnableBottom 3                          //индикатор включения "НИЖНЕГО" нагревателя
    //#define DRDY 9

    //переменные
    double R1, R2;                    //датчик нижнего излучателя, датчик у чипа
    byte LevelTop = 0x00;                           //уровень мощности ВЕРХА
    byte LevelBottom = 0x00;                        //уровень мощности НИЗА
    double Temp_Top = 0;                            //для хранения t°C ВЕРХА
    double Temp_Bottom = 0;                         //для хранения t°C НИЗА
    int Temp1, Temp2, Temp11, Temp12;               //для преобразования вида t°C ВЕРХА и НИЗА
    byte EnableLed = 0xFF;                          //состояние подсветки LCD (=ON)
    char command_in[6];
    const byte DESIRED_WIDTH = 3;                   //число символов в поле строки на LCD
    unsigned long nextRead;                         //переменная для обновления текущей температуры и расчёта ПИД

    void setup() {
      
      Serial.begin(9600);                           //задействуем serial

      lcd.begin();                    //активируем LCD
      lcd.clear();                    //стираем символы на LCD
      lcd.backlight();                    //подсветка

      //приветствие
      lcd.setCursor(1, 0);
      lcd.print("REWORK STATION");
      lcd.setCursor(5, 1);
      lcd.print("v3.0.0");

      SongHello ();                    //мелодия приветствия

      delay(3000);                    //показываем приветствие 3 секунды
      lcd.clear();                    //стираем символы на LCD

      //задаём состояние пинов подключения
      pinMode(RelayPin1, OUTPUT);
      pinMode(RelayPin2, OUTPUT);
      pinMode(EnableTop, OUTPUT);
      pinMode(EnableBottom, OUTPUT);

      //задаём состояние пинов, к которым подключены MAX6675
      pinMode(thermoCS, OUTPUT);
      pinMode(thermoCS2, OUTPUT);
      pinMode(thermoCLK, OUTPUT);
      pinMode(thermoDO, INPUT);

      digitalWrite(EnableTop, LOW);                 //индикатор включения ВЕРХА погашен
      digitalWrite(EnableBottom, LOW);              //индикатор включения НИЗА погашен
      //analogWrite(RelayPin1, LevelTop);
      //analogWrite(RelayPin2, LevelBottom);
      digitalWrite(RelayPin1, LevelTop);            //?
      digitalWrite(RelayPin2, LevelBottom);         //?
      //ad7706.reset();
      //ad7706.init(AD770X::CHN_AIN1);
      //ad7706.init(AD770X::CHN_AIN2);
      
      nextRead = millis();
      
      //прерывание по таймеру для диммера
      MsTimer2::set(10, Dimming);                   //100ms period
      MsTimer2::start();
    }

    //параметры строки
    String addZeroes(const String& src, byte pad)
    {
      if (src.length() >= pad)
        return src;
      String result;
      byte add = pad - src.length();
      while (add--)
        result += "0";
      result += src;
      return result;
    }

    //основной цикл программы
    void loop() {
      unsigned long currentMillis = millis();
      if (millis() > nextRead) {
        nextRead = millis() + SENSOR_SAMPLING_TIME;
        R1 = R1 * 0.6 + 0.4 * (thermocouple1.readCelsius()); //t°C нижнего излучателя
        R2 = R2 * 0.6 + 0.4 * (thermocouple2.readCelsius()); //t°C датчика у чипа
        //delay (140);                    //задержка между опросами MAX6675
        double Temp_Bottom = R1;
        double Temp_Top = R2;
        //Serial.print(R1);
        //Serial.print(":");
        //Serial.println(R2);

        //while ( !digitalRead(DRDY) );
        //R1 = ad7706.readADResult(AD770X::CHN_AIN1);
        //double Temp_Bottom = (R1 - 1) / 0.00392;
        //delay(1);                    //раскоментировать, если читает температуру некорректно
        //R2 = ad7706.readADResult(AD770X::CHN_AIN2);
        //double Temp_Top = (R2 - 1) / 0.00392 - 10;

        //работа с буфером обмена
        int i = 0;
        int buffer[6];
        if (Serial.available()) {
          delay(100);
          while ( Serial.available() && i < 7) {
            buffer[i++] = Serial.read();
          }
          buffer[i++] = '\0';
        }
        if (i > 0) {
          if (buffer[0] == 0xAA) {
            LevelTop = buffer[1];
            LevelBottom = buffer[2];
            EnableLed = buffer[3];
          }
          Temp1 = int(Temp_Top);
          Temp11 = 0;
          if (Temp1 > 255) {
            Temp11 = Temp1 - 255;
            Temp1 = 255;
          }
          Temp2 = int(Temp_Bottom);
          Temp12 = 0;
          if (Temp2 > 255) {
            Temp12 = Temp2 - 255;
            Temp2 = 255;
          }
          Serial.write(170);
          Serial.write(Temp1);
          Serial.write(Temp11);
          Serial.write(Temp2);
          Serial.write(Temp12);
          Serial.write(255);
        }
        if (LevelTop == 0x00) {
          digitalWrite(EnableTop, LOW);
        }
        if (LevelTop != 0x00) {
          digitalWrite(EnableTop, HIGH);
        }
        if (LevelBottom == 0x00) {
          digitalWrite(EnableBottom, LOW);
        }
        if (LevelBottom != 0x00) {
          digitalWrite(EnableBottom, HIGH);
        }
        //analogWrite(RelayPin1, LevelTop);                 //?
        //analogWrite(RelayPin2, LevelBottom);              //?
        
        //выводим на LCD температуры и уровни мощности
        lcd.setCursor(1, 0);
        lcd.print("TH:");
        lcd.setCursor(1, 1);
        lcd.print("BH:");
        lcd.setCursor(8, 0);
        lcd.print("PWR:");
        lcd.setCursor(8, 1);
        lcd.print("PWR:");
        lcd.setCursor(4, 0);
        lcd.print(addZeroes(String(int(Temp_Top)), DESIRED_WIDTH));
        lcd.setCursor(4, 1);
        lcd.print(addZeroes(String(int(Temp_Bottom)), DESIRED_WIDTH));
        lcd.setCursor(12, 0);
        lcd.print(addZeroes(String(int(LevelTop)), DESIRED_WIDTH));
        lcd.setCursor(12, 1);
        lcd.print(addZeroes(String(int(LevelBottom)), DESIRED_WIDTH));
        
        //применяем состояние подсветки по команде из софта
        if (EnableLed == 0x00) {
          lcd.noBacklight();
        }
        if (EnableLed == 0xFF) {
          lcd.backlight();
        }
      }
    }

    //---Мелодия приветствия---//
    void SongHello () {
      tone(buzzerPin, 523);
      delay(200);
      tone(buzzerPin, 659);
      delay(200);
      tone(buzzerPin, 784);
      delay(200);
      tone(buzzerPin, 1046);
      delay(200);
      noTone(buzzerPin);
    }

    //диммер
    void Dimming()  {
      OutPWR_TOP();
      OutPWR_BOTTOM();
    }

    //расчет мощности ВЕРХА
    void OutPWR_TOP() {
      //reg1 = Output1 + er1;                    //pwr- задание выходной мощности в %, er- ошибка округления
      reg1 = LevelTop + er1;                    //pwr- задание выходной мощности в %, er- ошибка округления
      if (reg1 < 50)
      {
        out1 = LOW;
        er1 = reg1 ;                    //reg- переменная для расчетов
      }
      else {
        out1 = HIGH;
        er1 = reg1 - 100;
      }
      digitalWrite(RelayPin1, out1);                        //пин через который осуществляется дискретное управление
    }

    //расчет мощности НИЗА
    void OutPWR_BOTTOM() {
      //reg2 = Output2 + er2;                    //pwr- задание выходной мощности в %, er- ошибка округления
      reg2 = LevelBottom + er2;                             //pwr- задание выходной мощности в %, er- ошибка округления
      if (reg2 < 50) {
        out2 = LOW;
        er2 = reg2 ;                    //reg- переменная для расчетов
      }
      else {
        out2 = HIGH;
        er2 = reg2 - 100;
      }
      digitalWrite(RelayPin2, out2);                        //пин через который осуществляется дискретное управление
    }
    Этот же код в формате arduino IDE прикрепляю. С софтом не работает, т.к. частота опроса задана по даташиту (чуть больше для удобства расчетов).

    Цитата mvm_ksaa ()
    Ещё-бы библиотеки вспомнить какие использовал))))))
    Таки мы уговаривали же вас smile
    Цитата skayp606 
    Цитата
    Цитата mvm_ksaa ()
    исходник использует большое количество сторонних библиотек и требует значительные настройки среды разработки,
    которые я уже абсолютно не
    помню, так как это делал в процессе, наверное если винду придется переустанавливать, сам хрен настрою))) - Цитата mvm_ksaa ()
    исходник использует большое количество сторонних библиотек и требует значительные настройки среды разработки,
    которые я уже абсолютно не
    помню, так как это делал в процессе, наверное если винду придется переустанавливать, сам хрен настрою))) - образ виндовса ) и проблема решена.
     
    Цитата
    Цитата Cinema
    Цитата skayp606 ()
    образ виндовса ) и проблема решена.

    mvm_ksaa Заклинаю вас! - сделайте это в скорейшем времени, ...!

    Добавлено (19.11.2020, 13:01)
    ---------------------------------------------

    Цитата Cinema ()
    Сеансы приёма-передачи между софтом и скетчем следует запускать чаще, чем 4 раза в секунду
    Вот тут я поразмыслил над этой фразой, и понял, что в этом вопросе знаний мне не хватает sad Так что сдамся-ка лучше на милость разработчику smile , раз mvm_ksaa практически декомпилировал прошивки LDZ ...
    Прикрепления: dimmer_max6675.ino (11.6 Kb)

    "Опыт — это то, что получаешь, не получив того, что хотел" © интернет

    Сообщение отредактировал Cinema - Среда, 18.11.2020, 09:29
     

    suvorov_ak
    Дата: Пятница, 20.11.2020, 11:16 | Сообщение # 199        
    Рядовой
    Группа: Пользователи
    Сообщений: 2
    Статус: Offline

    А можно поправить код в самой программе, что бы вентилятором управлял основной контроллер? Смысл от еще одной ардуинки?
     

    o514scp
    Дата: Понедельник, 14.12.2020, 01:09 | Сообщение # 200        
    Подполковник
    Группа: Пользователи
    Сообщений: 109
    Статус: Offline

    "Черновик" контроллера кулеров. Пока что не возился особо со всем этим добром, как-то не до этого. При подключении "по умолчанию" кулеры на некоторых оборотах весьма противно зудят, нужно подобрать LC фильтры перед кулерами.
    Однако слишком большие емкости конденсаторов дают отрицательный эффект - снижают эффективность регулировки.
    Прикрепления: fan_control.lay6 (40.8 Kb)
     

    Cinema
    Дата: Вторник, 05.01.2021, 03:26 | Сообщение # 201        
    Генерал-майор
    Группа: Проверенные
    Сообщений: 618
    Статус: Offline

    mvm_ksaa Так ничего и не получилось у вас? Я насчет привязки сеансов связи ПО-дуина к допустимым для max6675 220-250ms? У вас всё равно нет детектора, это РАЗ. У вас всё равно алюминиевая плита снизу, работающая только на П-составляющей - это ДВА. У вас верхний излучатель керамический китаец - это ТРИ. Чего тут беспокоиться за скорость - четверти секунды (250ms) с головой хватает для работы с кварцем по Брезенхему с полным ПИД.
    "Опыт — это то, что получаешь, не получив того, что хотел" © интернет
     

    o514scp
    Дата: Среда, 27.01.2021, 11:57 | Сообщение # 202        
    Подполковник
    Группа: Пользователи
    Сообщений: 109
    Статус: Offline

    ADшка пришла, можно плату делать happy посмотрим, как оно работает)
     

    kc
    Дата: Пятница, 12.02.2021, 10:34 | Сообщение # 203        
    Рядовой
    Группа: Пользователи
    Сообщений: 2
    Статус: Offline



    mvm_ksaa,
    добрый день. Меня интересует протокол обмена станции с вашей программой . я делаю свою станцию .та не устраивает хотя использую уже года 3 если есть возможность сбросить на kcpv@mail.ru протокол обмена на C++ ,буду благодарен если у меня все получится то вышлю результат.
    Прикрепления: 9908582.jpg (131.5 Kb)


    Сообщение отредактировал kc - Пятница, 12.02.2021, 10:41
     

    o514scp
    Дата: Среда, 14.04.2021, 13:47 | Сообщение # 204        
    Подполковник
    Группа: Пользователи
    Сообщений: 109
    Статус: Offline

    Цитата mvm_ksaa ()
    mvm_ksaa
    Вы же делали этот проект на основе "Термопро" ? Просто вот есть возможность взять термостол стм 24-17 дешевле, чем официально. Как его если что уживать с вашим контроллером ?
     

    Cinema
    Дата: Среда, 14.04.2021, 14:14 | Сообщение # 205        
    Генерал-майор
    Группа: Проверенные
    Сообщений: 618
    Статус: Offline

    Цитата o514scp ()
    делали этот проект на основе "Термопро" ?
    Не так. Просто ему понравилась ик650. А меню профиля соответствует таковому у LDZ, за исключением лишь некоторых моментов. В термостоле, что вы указали, может быть установлен PT1000 вместо pt100. А в остальном - ну, плита, ну, нагревательный элемент, - ничего необычного, в сравнении с версией mvm_ksaa.

    "Опыт — это то, что получаешь, не получив того, что хотел" © интернет
     

    o514scp
    Дата: Среда, 14.04.2021, 15:35 | Сообщение # 206        
    Подполковник
    Группа: Пользователи
    Сообщений: 109
    Статус: Offline

    Цитата Cinema ()
    В термостоле, что вы указали, может быть установлен PT1000 вместо pt100
    Парочка pt100 есть. По сути, внедрить переключатель, чтобы стол имел возможность работать как от контроллера, так и автономно это раз плюнуть.
    Разве что может в заводских условиях сделать квадратное/прямоугольное отверстие под этот переключатель, чтобы не уродливо было...

    Добавлено (21.10.2021, 09:00)
    ---------------------------------------------
    Всем снова здравствуйте. Было много других дел, особо не занимался этим вот всем. Тут встал вопрос, а ничего, что кварц у меня на 2,4576 мгц ? Просто 2,457 вообще нет нигде(

     

    sergey_nemov105
    Дата: Четверг, 21.10.2021, 14:26 | Сообщение # 207        
    Сержант
    Группа: Пользователи
    Сообщений: 34
    Статус: Offline

    o514scp, в ваших краях эти продаваны не кормятся?
    
    

    Cinema это я.
     

    sergey_nemov105
    Дата: Суббота, 23.10.2021, 10:28 | Сообщение # 208        
    Сержант
    Группа: Пользователи
    Сообщений: 34
    Статус: Offline

    Некоторое время назад я озадачился возможностью перевода проекта mvm_ksaa с платиновых терморезисторов PT100 и микросхемы AD7705 на термопары и модули MAX6675. Для "затравки" представляю картинку - блок-схему соединений. Измененный проект находится в стадии тестирования, поэтому остальные материалы пока не размещаю. Замечу только, что теперь при потере связи между софтом и контроллером станции, станция гасит нагреватели в ноль, а не жарит плату до попадоса на серьезные деньги, а на графиках в софте появляются выбросы, свидетельствующие об аварийной ситуации.


    Добавлено (23.10.2021, 19:11)
    ---------------------------------------------
    Цитата mvm_ksaa ()
    автоматический режим смотреть надо, я раз попробовал на нем работать, да как-то и забил на него, всегда на ручном практически работаю, у меня мастера знакомые на Термопро ИК-650 поигрались с профилями, все причем, друг друга они не знают, забили на них и снимают ставят в ручном режиме и быстрее и качественнее и надежней. Программу от техноальянса поставили все, посмотрели, поигрались и тоже бросили. Ставят низ на 300-350 градусов, зависит от типа платы (приходит с опытом), ждут нагрева на внешнем термодатчике 160-190, тоже от типа платы, включают верх, доводят до 220-240, при снятии качнули чип, поплыл, сняли термопинцетом, готовят плату, при установки, при достижении температуры смотрят чип просел, слеганца качнули на шарах, убрали верх,
    Помню, зацепили меня эти строки. Подумал, что-то неладное с софтом может быть... Похоже, не обманулся, к сожалению. Понимаю, что это обращение скорее в никуда, ведь mvm_ksaa не появляется в форуме с 26 июля 2021 года, несмотря на статус модератора. И всё-таки напишу.
    Опробовав все три (3) доступные версии софта mvm_ksaa (2.2.1 Х86 / 2.2.1 Х64 / 2.2.3), я обнаружил, что в автоматическом режиме Верхний Излучатель не включается ни при каких обстоятельствах.
    Надпись TOP AVTIVE (вместо TOP IS ACTIVE) появляется исключительно при установленной галке manual control.
    В связи с этим возникает подозрение, что автоматический режим программно отключен. А это сводит практически к нулю целесообразность использования проекта.
    Искренне надеюсь, что mvm_ksaa все же представит софт с работающей функцией автоматического режима. Если у кого-то сохранился самый первый вариант софта от ноября 2017 года, прошу выложить здесь для проведения тестов.

    Добавлено (23.10.2021, 23:31)
    ---------------------------------------------
    В общем, я предельно близок к обозначению проекта mvm_ksaa непригодным для повторения и эксплуатации.
    В процессе исследования работы всех трёх (3) доступных версий софта было выявлено следующее:
    1. Включаем станцию (не важно, питание контроллера от USB, или от внешнего источника), подключаем её к разъему USB на ПК. Запускаем софт на ПК.
    2. Заполняем необходимые поля во вкладках меню софта. Закрываем окно софта и снова запускаем его, чтобы настройки в файле Iniprofil.ini, созданном софтом, применились.
    3. Нажимаем кнопку Сonnect.
    4. Запускаем пайку (не важно, с отмеченной, или с убранной галкой manual control). Наблюдаем как софт строит графики температура-время.
    5. Останавливаем пайку, снова нажимаем кнопку Connect для разъединения связи со станцией.
    6. Закрываем окно софта и физически отключаем станцию от контроллера.
    7. Повторяем пункты 1. и 3.
    ВСЁ!!! Получаем многократную перезагрузку контроллера, его зависание, а также, если используется оригинальный скетч mvm_ksaa - аварийно вылетающий софт!!!
    Я надеялся, что эта ситуация возникает из-за измененного под MAX6675 скетча, или моих плат arduino. Перепробовал на разных платах. Увы, это проделки софта mvm_ksaa. Действительно жаль, что до меня никто так и не обнаружил это всё, хотя несколько участников в теме пытались проект повторить, только участник skayp606 заметил неадекватное поведение софта в некоторых моментах.

    Добавлено (25.10.2021, 08:53)
    ---------------------------------------------
    Пожалуй, повторю тесты на другом компьютере, типа "контрольный выстрел", как раз появился отремонтированный. Материалы, конечно, опубликую, жаль потраченного времени только... Но сначала на живой станции настройки ПИД НИ и НИ попробую сделать и проведу испытания.

    Прикрепления: 8024568.jpg (369.2 Kb)

    Cinema это я.

    Сообщение отредактировал sergey_nemov105 - Суббота, 23.10.2021, 23:39
     

    o514scp
    Дата: Вторник, 26.10.2021, 23:45 | Сообщение # 209        
    Подполковник
    Группа: Пользователи
    Сообщений: 109
    Статус: Offline

    Цитата o514scp ()
    в ваших краях
    С ЧиД раньше заказывал некоторые детальки, хорошо что там есть. правда доставка платная, но что ж уж тут. Про остальные конторы впервые слышу)
     Тут ещё на чертеже ошибка получается, должен стоять ещё один 0,1мкф а не перемычка) Надо будет аккуратно удалить это место и сходить за конденсатором)
    Цитата sergey_nemov105 ()
    Материалы, конечно, опубликую,
    Посмотрим, что у меня выйдет. Хорошо, что у дяди Ляо модули и термопары дешёвые. 
    Цитата sergey_nemov105 ()
    Но сначала на живой станции настройки ПИД НИ и НИ попробую сделать
    А с твердотельными реле в вашей схеме это точно прокатит ? (может я в чём-то ошибаюсь...)
    Прикрепления: 1810960.png (24.6 Kb) · 2987321.png (764.8 Kb)
     

    sergey_nemov105
    Дата: Среда, 27.10.2021, 08:51 | Сообщение # 210        
    Сержант
    Группа: Пользователи
    Сообщений: 34
    Статус: Offline

    Цитата o514scp ()
    Тут ещё на чертеже ошибка получается, должен стоять ещё один 0,1мкф а не перемычка)
    Посмотрите на схему. Вы имеете ввиду конденсатор,который я выделил в овале? По этому поводу были:
    вопрос -
    
    и ответ -
    
    У автора датчики двумя проводами подключены, для 4-проводной схемы длина линий датчиков должна быть такой, что станция в соседнем районе относительно контроллера с оператором smile .

    Цитата o514scp ()
    с твердотельными реле в вашей схеме это точно прокатит?
    У автора силовая от проекта LDZ. Там у LDZ аналоги SSR-DA-AC на основе оптотриаков со встроенной схемой контроля нуля. Так что, кто желает ручками собрать - ничего против не имею, я нарисовал для тех, кто имеет в наличии покупные, или не желает возиться с рассыпухой/паять/сверлить smile .
    Прикрепления: 1305887.jpg (72.9 Kb)

    Cinema это я.
     

    Поиск: