Клон паялки DIY для Weller RT картриджей

Обсуждаем цифровые устройства...
Ответить
Первый раз сказал Мяу!
Сообщения: 37
Зарегистрирован: Ср июн 15, 2011 20:02:07

Сообщение amigo60 »

https://www.elektormagazine.com/magazin ... r-70/42342

Arduino Leonardo совместимая.
1. Повторяемость 100%. 6 из 6! Настройки не требует
2. Lay кривоватый, требует доработки
3. Софт (менюшки и установки) переделал под себя
4. Ручка-держатель картриджа-жала елементарно делается на коленке из подручных
(кроме разъёмов) материалов

Жаль фото не подвешиваются...
Вложения
Клон паялки DIY для Weller RT картриджей.7z
(773.49 КБ) 429 скачиваний
Реклама
Собутыльник Кота
Аватара пользователя
Сообщения: 2560
Зарегистрирован: Ср янв 16, 2008 08:34:04
Откуда: KMV

Сообщение serg_svd »

а схема где?
"Чтобы правильно задать вопрос, нужно знать бо́льшую часть ответа." Ро́берт Ше́кли
Я правильных ответов знаю мало, поэтому не стесняюсь и много спрашиваю.
Реклама
Вымогатель припоя
Аватара пользователя
Сообщения: 579
Зарегистрирован: Вт янв 02, 2018 11:34:41
Откуда: Украина.

Сообщение TrumPIC »

Схема и описание тут, в журнальчике

https://www.elektormagazine.com/magazine/elektor-70
От бобра добра не ищут!©
Первый раз сказал Мяу!
Сообщения: 37
Зарегистрирован: Ср июн 15, 2011 20:02:07

Сообщение amigo60 »

[uquote="serg_svd",url="/forum/viewtopic.php?p=3816338#p3816338"]а схема где?[/uquote]

Пардон, полная инфа (без регистрации) тут:

https://www.elektormagazine.de/magazine/180348-02
Вложения
schema.rar
(57.13 КБ) 348 скачиваний
Реклама
Эиком - электронные компоненты и радиодетали
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

посмотрел код.
ПИД-регулятором тут и не пахнет
Спойлер

Код: Выделить всё

/**********************************************************************************************************
                                void pwm_Adjust(void)        
**********************************************************************************************************
 Function:    void pwm_Adjust(void)
 Input:       None
 Output:      uint16_t 
 Description: Pwm adjustment
**********************************************************************************************************/
void pwm_Adjust(void)
{
    static uint16_t LastRun=0;
    uint16_t call_delta=0;
    int16_t temp_Diff=0;
    uint16_t temperature=999;
    
    if(LastRun>Ticks){
      call_delta=UINT16_MAX-LastRun+Ticks;
    } else {
      call_delta=Ticks-LastRun;
    }
    if(call_delta< DETLA_REG ){
      _NOP();
    } else {
      LastRun=Ticks;
      cli();
      adjustPWM_Running=1;
      sei();
      Station.PWM.Off();                          //switch off heater         
      _delay_ms(10);                              //wait for some time (to get low pass filter in steady state)
      temperature = Station.Temp.Read(ADC_AVG);
      
      if(setpoint > temperature)
      {
        temp_Diff = (int32_t)setpoint - (int32_t)temperature;
             
        if(temp_Diff < 3)
        {  
  
          current_PWM +=(int32_t)5;
          
        }
        else
        {
           
          current_PWM = (int32_t)temp_Diff  * (int32_t)setpoint/ (int32_t)6 ;
       
        }
        
        if(current_PWM > MAX_PWM_LIMIT){   
           current_PWM = MAX_PWM_LIMIT;
        }
        
          
      } 
      else if(setpoint < temperature)
      {
          temp_Diff = (int32_t)temperature - (int32_t)setpoint;
          
          if(temp_Diff > 2)
          {
           
            current_PWM = 0;
  
          }
          else
          {
            if(current_PWM>0){
              if( ((int32_t)current_PWM/(int32_t)7) > 0){
                
                current_PWM -= (int32_t)current_PWM/(int32_t)7;
                if( ((int32_t)current_PWM%(int32_t)7) > 3){
                  if(current_PWM>0){
                    current_PWM--;
                  }
                }
              } else {
                current_PWM--;
              }
            }
            
          }
          
          if(current_PWM < 0)   
             current_PWM = 0;
          
      } else {
        current_PWM = current_PWM;  
      }
  
      HeatPwr_Percent= ((current_PWM*100) / MAX_PWM_LIMIT );
      adjustPWM_Running=0;
      
    }   
    
}
ohmycode!
primuss3.com
Контактная информация:
Реклама
Первый раз сказал Мяу!
Сообщения: 37
Зарегистрирован: Ср июн 15, 2011 20:02:07

Сообщение amigo60 »

[uquote="slav0n",url="/forum/viewtopic.php?p=4071874#p4071874"]посмотрел код.
ПИД-регулятором тут и не пахнет


1. Оригинальный подход к софту: пахнет или не пахнет ПИДом... На Шнобеля подай,- есть шанс.
2. Будь добр, гарный хлопчик, покажи, где упоминалось про ПИД?
Реклама
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

у каждого свои подходы...
у тебя - рюшечки-шашечки-менюшечки
у меня - способ регулирования
ohmycode!
primuss3.com
Контактная информация:
Первый раз сказал Мяу!
Сообщения: 37
Зарегистрирован: Ср июн 15, 2011 20:02:07

Сообщение amigo60 »

[uquote="slav0n",url="/forum/viewtopic.php?p=4073527#p4073527"]у каждого свои подходы...
у тебя - рюшечки-шашечки-менюшечки
у меня - способ регулирования[/uquote]

Ушибся ты (об угол печки, гарный хлопец.
Для меня главное в работе подходящий удобный инструмент.

Нюхай PID и дальше и дольше :)))
Первый раз сказал Мяу!
Сообщения: 35
Зарегистрирован: Пн июл 19, 2021 08:57:28

Сообщение zinc »

но алгоритм регулирования здесь действительно так себе
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

amigo60 писал(а):PID и дальше
конечно PID forever
например, тем кто понимает, мой ПИД жала Т12 замечательно работает на частоте опроса датчика всего 2.5 Гц
ohmycode!
primuss3.com
Контактная информация:
Ответить

Вернуться в «Цифровая техника»