Цифровая паяльная станция своими руками.(V 2.0)

Вопросы и замечания по статьям и схемам, представленным на нашем сайте

При поддержке РадиоКОТструктор.ру


Gelios
Родился
Сообщения: 19
Зарегистрирован: Ср июн 29, 2011 20:09:59

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение Gelios »

У пирометра в настройках есть коэффициент отражения поверхности (был у того, что я игрался), а из-за него показания очень отличаются, причём как выставить его точно не ясно.
имхо: игрушка это просто...
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение Леонид Иванович »

kt840 писал(а):Т.е замеры проводить при заданой температуре 100,150,200 и т.д. НА КОНЦЕ ЖАЛА и после СО СНЯТЫМ ЖАЛОМ НА ТЕРПОПАРЕ только без помощи пирометра не обойтись. И вывести поправочные коэффициенты. Может это как-то решит проблему?


Не понимаю, зачем нужен пирометр. Термопара, в отличие от терморезистора, является точным измерителем даже без калибровки (во всяком случае, в первом приближении). Нужен только прецизионный измерительный тракт с точным коэффициентом усиления, компенсацией холодного спая и линеаризацией характеристики. Всё это у меня в паяльной станции есть. Поэтому я получаю точные значения температуры в точке установки термопары. Я пробовал устанавливать термопару на кончик жала, результаты измерений есть. Но чтобы имея только показания встроенной термопары регулировать так, словно термопара на кончике жала, нужно иметь тепловую модель паяльника. Вот на модели у меня всё и застопорилось.
Аватара пользователя
Volly
Опытный кот
Сообщения: 702
Зарегистрирован: Пт мар 06, 2009 18:22:23

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение Volly »

Ничегонеработает
Не проще ли просто откалибровать станцию ориентируясь по реальной температуре жала, а не по напряжению встроенной термопары? Серьёзная ошибка будет только на теплоёмких полигонах. Как компенсировать эту ошибку я не представляю,- когда по напр. внутренней термопары- мощности можно сделать вывод, что паяется крупный объект- возможно пайка уже осталась позади. Слишком высокая инерционность получается.

Gelios
В том то и дело, что большинство ширпотребных пирометров имеют фиксированный коэффициент, а:
•Металлы белого цвета. Имеют очень маленький коэффициент излучения в диапазоне от 8 до14 мкм, и поэтому их температуру трудно измерять. Для измерений требуется применение покрытий, увеличивающих излучательную способность, например: краска, масляная пленка.Желательно измерять контактным термометром.
•Оксиды металлов. В данной группе не существует постоянных показателей. Коэффициент излучения находится между 0.3 и 0.9 мкм и он сильно зависит от длины волны.Для точного определения температуры необходимо выбрать коэффициент излучения объекта. Его можно определить посредством сравнительного измерения контактным термометром (т.е. меняя коэффицент излучения, заложенный в пирометр, можно выбрать такой, когда измерения пирометра будут совпадать с измерениями контактного терометра). В противном случае можно применять покрытия с определенным уровнем излучательной способности.
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение Леонид Иванович »

Volly писал(а):Не проще ли просто откалибровать станцию ориентируясь по реальной температуре жала, а не по напряжению встроенной термопары?


Такая возможность есть даже в существующей версии: для измерителя температуры с помощью сервисной программы задается любое значение Shift и Gain, которые потом запоминаются в EEPROM. Можно переделать интерфейс, чтобы вместо этого вводить две точки в градусах. Но это не суть. По идее, надо калибровать при среднестатистической теплоотдаче, которая имеет место в процессе пайки. Но тогда наблюдается дикий перегрев на простое.

Volly писал(а):Как компенсировать эту ошибку я не представляю,- когда по напр. внутренней термопары- мощности можно сделать вывод, что паяется крупный объект- возможно пайка уже осталась позади. Слишком высокая инерционность получается.


Консультировался по этому вопросу в НИИ прикладных физических проблем. Сказали, что на основе тепловой модели сделать это можно. А если я не могу составить модель, значит - дурак.
Аватара пользователя
kt840
Нашел транзистор. Понюхал.
Сообщения: 196
Зарегистрирован: Вт апр 05, 2011 15:39:55
Откуда: Красноярск

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение kt840 »

Ребята , я ведь предложил только идею - вывести коэффициент с помощью которого можно было бы не устранить , так хотя бы свести к
минимуму те конструктивные недостатки которые присущи большинству моделей паяльников.Ну не хочет промышленность ни забугорная ,
ни тем более наша подойти к изготовлению паяльников с научной точки.
Как и чем замерить температуру вопрос не основной , а основной - какова вероятность что идя в данном направлении
можно улучшить эту(я думаю многие согласятся) и так уже великолепную констукцию.
А метод измерения может быть достаточно простым : медная проволока например или другой метал изменяющий сопротивление при нагреве
одноу и той же длины на жале и на нагревателе. И не обязательно мерить температуру , подойдет любая относительная величина.
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение Леонид Иванович »

kt840 писал(а):Ребята , я ведь предложил только идею - вывести коэффициент с помощью которого можно было бы не устранить , так хотя бы свести к минимуму те конструктивные недостатки которые присущи большинству моделей паяльников.


Вот и я за то. Вы хотите предложить что-то конкретное?

kt840 писал(а):идея в данном направлении можно улучшить эту (я думаю многие согласятся) и так уже великолепную конструкцию.


Соглашусь. Но меня не поддержит Volly. Конструкция лукеевских пальников - великолепна (с точки зрения цена/качество). Но нам лень приложить мозги, как их правильно использовать.

kt840 писал(а):А метод измерения может быть достаточно простым : медная проволока например или другой металл изменяющий сопротивление при нагреве


Зачем какая-то проволока? Есть термопары, которые выдают конкретное напряжение для конкретной разницы температур спаев.
Аватара пользователя
kt840
Нашел транзистор. Понюхал.
Сообщения: 196
Зарегистрирован: Вт апр 05, 2011 15:39:55
Откуда: Красноярск

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение kt840 »

Ничегонеработает

Да я и предложил конкретно , куда уж конкретнее : на основе разности температур вводить программно поправку или
коэффициент(назовите как хотите) .
Насчет проволки - для примера (что можно использовать ЛЮБЫЕ ОТНОСИТЕЛЬНЫЕ ВЕЛИЧИНЫ для измерений).
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение Леонид Иванович »

kt840 писал(а):Да я и предложил конкретно , куда уж конкретнее : на основе разности температур вводить программно поправку или коэффициент(назовите как хотите) .


В сотый раз уже отвечаю: если ввести тупую поправку температуры при пайке, то при простое будет дикий перегрев. Лужение жала слезет. Тут надо что-то умнее. У нас в руках есть данные о потребляемой нагревателем мощности и показания встроенной термопары. На основе этих величин нужно сформировать поправку в уставку ПИД.
Аватара пользователя
Volly
Опытный кот
Сообщения: 702
Зарегистрирован: Пт мар 06, 2009 18:22:23

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение Volly »

Я же предлагал простой вариант:
Переодически прекращать нагрев и замерять время за которое термопара остынет на некоторую величину. Чем больше температурная разница между термопарой и жалом- тем быстрее термопара будет остывать. На основании этого делаем поправку. Ах да, за точку отсчёта берём реальную температуру термопары, на уровне заданной.
Аватара пользователя
kt840
Нашел транзистор. Понюхал.
Сообщения: 196
Зарегистрирован: Вт апр 05, 2011 15:39:55
Откуда: Красноярск

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение kt840 »

Браво Volly !
Примерно это я и имел ввиду , только коряво мысли изложил .
А перегрева ,да такого при котором полуда облезет ,думаю не случится , потому как если разница температур жала
до начала пайки и в конце ее вряд ли составит несколько десятков градусов , если конечно не елозить по полигонам
десять минут. Только за точку отсчета мне кажется правильнее брать всеж-таки реальную температуру жала.
jeniok
Открыл глаза
Сообщения: 64
Зарегистрирован: Вт апр 20, 2010 16:45:32

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение jeniok »

Если поставить трансформатор на 18 вольт, после диодного моста и конденсаторов будет около 24 вольт, то под нагрузкой напряжение не будет просаживаться?
Аватара пользователя
mr_kot
Друг Кота
Сообщения: 4625
Зарегистрирован: Пт ноя 27, 2009 18:12:27
Откуда: Черкассы, UA
Контактная информация:

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение mr_kot »

jeniok писал(а):Если поставить трансформатор на 18 вольт, после диодного моста и конденсаторов будет около 24 вольт, то под нагрузкой напряжение не будет просаживаться?

Просаживаться будет, а вот насколько, зависит от:
1. мощности трансформатора
2. емкости сглаживающего конденсатора
3. мощности нагрузки
Изображение

В мире нет вредных веществ, в мире есть вредные количества © Д.И.Менделеев
Когда на форуме переходят на "Вы", в реальной жизни уже давно бьют морду © автор неизвестен.
jeniok
Открыл глаза
Сообщения: 64
Зарегистрирован: Вт апр 20, 2010 16:45:32

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение jeniok »

[s]Есть ли в теме где-то распиновка семисегментного индикатора?
У меня индикатор вот такой
http://www.e-voron.dp.ua/catalog/013076[/s]

Извините, уже не надо, сам разобрался
jeniok
Открыл глаза
Сообщения: 64
Зарегистрирован: Вт апр 20, 2010 16:45:32

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение jeniok »

Подскажите пожалуйста, что изображено еще на рисунке кроме резистора на 10 ком?
Изображение
Аватара пользователя
mr_kot
Друг Кота
Сообщения: 4625
Зарегистрирован: Пт ноя 27, 2009 18:12:27
Откуда: Черкассы, UA
Контактная информация:

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение mr_kot »

Посмотри по схеме, что подключено к 1 и 2 выводам микросхемы. Или ссылку на схему выложи.
Первое, что приходит на ум, это DIP-переключатель. Но смущает то, что они включены последовательно. Так что только схема даст ответ.
Изображение

В мире нет вредных веществ, в мире есть вредные количества © Д.И.Менделеев
Когда на форуме переходят на "Вы", в реальной жизни уже давно бьют морду © автор неизвестен.
jeniok
Открыл глаза
Сообщения: 64
Зарегистрирован: Вт апр 20, 2010 16:45:32

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение jeniok »

Там по схеме оказались переменный резистор на 100к и резюк на 60к.
Просто для меня нестандартные обозначения непонятные, я еще зеленый.

Схему собрал полностью. Пока что тестировал, подав напряжение только на контроллер. Вроде все работает. Загорается на индикаторе надпись "Off" , при нажатии на кнопку, пишет "Err" так как паяльника нету.
Аватара пользователя
Volly
Опытный кот
Сообщения: 702
Зарегистрирован: Пт мар 06, 2009 18:22:23

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение Volly »

jeniok, по той станции, что Вы собираете, есть отдельная ветка.
Аватара пользователя
MerK
Грызет канифоль
Сообщения: 274
Зарегистрирован: Пт июл 09, 2010 21:37:23
Откуда: Саратов

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение MerK »

Хочу сделать паяльную станцию только полностью переделать под свои детали.
И никак не могу въехать как в этой станции переводят измеренное напряжение в температуру. Ведь АЦП 10 битный. Минус два младших бита на помехи а 2 в 8 =255. А регулировка температуры от 100 до 400. Если кто знает алгоритм от измерения напряжения с термопары до перевода в температуру поделитесь пожалуйста.
В каждом из нас спит гений и бодрствует идиот
Аватара пользователя
Volly
Опытный кот
Сообщения: 702
Зарегистрирован: Пт мар 06, 2009 18:22:23

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение Volly »

MerK
Вроде ответ и так очевиден,- никаких 2 битов на помехи. Результат преобразования и есть показание температуры. Возможно делённый на 2 (сдвинутый на 1 бит), или (и) умноженный на какой-нибудь коэффициент для программной поправки показаний.
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Цифровая паяльная станция своими руками.(V 2.0)

Сообщение Леонид Иванович »

MerK писал(а):Если кто знает алгоритм от измерения напряжения с термопары до перевода в температуру поделитесь пожалуйста.


Делюсь своим алгоритмом:

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

//----------

//DSS-90
//Модуль измерения температуры

//Для измерения температуры используется термопара K-типа,
//подключенная ко входу АЦП ADC6.
//Используется внешний источник опорного напряжения типа
//TL431 с напряжением 2.5 В.
//Отсчеты АЦП производятся с интервалом T_SYS, при измерении
//напряжения термопары берется FIR_N отсчетов, которые поступают
//на усредняющий FIR-фильтр с прямоугольным окном.
//Для контроля обрыва термопары используется резистор смещения.
//Если термопара оборвана, АЦП фиксирует максимальное напряжение.
//При этом вместо значения температуры возвращается код обрыва
//термопары TC_BRK.
//Температура холодного спая измеряется дополнительным цифровым
//термометром типа DS18B20.
//Если термометр холодного спая отсутствует, температура
//холодного спая принимается равной TCJ_NOM.
//Когда напряжение термопары и температура холодного спая измерены,
//производится вычисление температуры.
//Температура холодного спая преобразуется в напряжение по линейному
//закону Vcj = Tcj * 40 uV/°C. В диапазоне 0…+50°C погрешность
//не превышает 0.5°C.
//Измеренное напряжение термопары складывается с полученным
//напряжением: Vhj = Vtc + Vcj. В результате получается напряжение
//на горячем спае (т.е. напряжение на термопаре приводится к тому
//значению, которое было бы при нулевой температуре холодного спая).
//Полученное напряжение преобразуется в температуру по таблице
//линеаризации с кусочно-линейной интерполяцией.

//----------

#include "Main.h"
#include "TC.h"
#include "DS18B20.h"

//---------- Константы: ----------

#define ADC_RES    1023 //разрешение АЦП, квантов
#define ADC_REF    2500 //опорное напряжение АЦП, мВ
#define R_FB      100.0 //номинал резистора обратной связи ОУ, кОм
#define R_GND       1.0 //номинал резистора с инв. входа ОУ на землю, кОм
#define V_BRK      24.0 //напряжение детектирования обрыва термопары, мВ
#define TCJ_K      40.0 //температурный коэффициент для CJ, мкВ/°C
#define TCJ_RES     0.1 //дискретность температуры холодного спая, °C
#define FIR_N (int)(TSAMPLE * 1E3 / T_SYS) //количество точек цифрового фильтра
#define GAIN ((R_FB + R_GND) / R_GND) //коэффициент усиления сигнала термопары

#define TC_V_MAX   21   //максимальное напряжение термопары, мВ
#define TC_POINTS (TC_V_MAX + 1) //количество точек таблицы

//Таблица линеаризации термопары K-типа. В таблице даны значения
//температуры в десятых долях градуса в зависимости от напряжения.
//Диапазон температур 0...+508.3°C.
//Шаг напряжения - 1 мВ, диапазон 0..+21 мВ:

const int __flash Lin[TC_POINTS] =
{
     0,  250,  495,  736,  976, // 0.. 4 мВ
  1220, 1466, 1715, 1965, 2215, // 5.. 9 мВ
  2462, 2707, 2950, 3190, 3430, //10..14 мВ
  3668, 3906, 4143, 4378, 4614, //15..19 мВ 
  4849, 5083                    //20..21 мВ
};

//коды состояний процесса:

enum
{
  TC_STOP,  //процесс остановлен
  TC_START, //фаза запуска процесса
  TC_VTC,   //процесс измерения напряжения термопары
  TC_CALC,  //процесс вычисления температуры
  TC_DONE   //процесс завершен
};

#define TCJN_MIN      0 //минимальная  температура холодного спая, x0.1°C
#define TCJN_NOM    380 //номинальная  температура холодного спая, x0.1°C
#define TCJN_MAX   1000 //максимальная температура холодного спая, x0.1°C

#define SHIFT_MIN -1000 //минимальный  сдвиг температурной шкалы, x0.1°C
#define SHIFT_NOM     0 //номинальный  сдвиг температурной шкалы, x0.1°C
#define SHIFT_MAX  1000 //максимальный сдвиг температурной шкалы, x0.1°C

#define GAIN_MIN    250 //минимальный  наклон температурной шкалы, 0.250
#define GAIN_NOM   1000 //номинальный  наклон температурной шкалы, 1.000
#define GAIN_MAX   4000 //максимальный наклон температурной шкалы, 4.000

#define ETSIGN   0xBEBE //сигнатура EEPROM

//---------- Переменные: ----------

static char State;  //состояние модуля измерения температуры
static int Temp;    //текущая температура
static int Tcj;     //текущая температура холодного спая
static int Shift;   //смещение температурной шкалы
static int Gain;    //наклон температурной шкалы

__no_init __eeprom int  ETSign; //сигнатура EEPROM
__no_init __eeprom int  ETcjn;  //Tcjn в EEPROM
__no_init __eeprom int  EShift; //Shift в EEPROM
__no_init __eeprom int  EGain;  //Gain в EEPROM

//---------- Прототипы функций: ----------

int Convert(long code, int tcj); //преобразование кода АЦП в температуру

//---------- Инициализация измерителя температуры: ----------

void TC_Init(void)
{
  //Vref = AREF, вход MUX_ADC:
  ADMUX = MUX_ADC;
  //разрешение АЦП, CK/128:
  ADCSRA = (1 << ADEN) | (1 << ADPS2) | (1 << ADPS1) | (1 << ADPS0);
  DS18B20_Init();            //инициализация модуля термометра DS18B20
  //чтение EEPROM:
  if(ETSign == ETSIGN) //если сигнатура верна, чтение EEPROM
  {
    TC_SetTcjn(ETcjn);
    TC_SetShift(EShift);
    TC_SetGain(EGain);
  }
  else                 //если ошибка сигнатуры, инициализация EEPROM
  {
    TC_SetTcjn(TCJN_NOM);
    TC_SetShift(SHIFT_NOM);
    TC_SetGain(GAIN_NOM);
    ETSign = ETSIGN;
  }
  State = TC_START;          //запуск измерения
}

//---------- Процесс измерения: ----------

bool TC_Exe(bool t)
{
  static int SamCnt;                  //счетчик отсчетов АЦП
  static long AdcCode;                //код АЦП при измерении
  bool Update = 0;
  DS18B20_Exe(t);                     //измерение температуры холодного спая
  if(t)
  {
    switch(State)
    {
    //запуск процесса измерения температуры: 
    case TC_START:
      {
        SamCnt = FIR_N;               //загрузка количества отсчетов
        AdcCode = 0;                  //обнуление кода
        ADCSRA |= (1 << ADSC);        //запуск АЦП
        State = TC_VTC;               //процесс измерения
        break;
      }
    //измерение напряжения термопары: 
    case TC_VTC:
      {
        if(SamCnt)
        {
          SamCnt--;                   //счетчик отсчетов
          AdcCode += ADC;             //суммирование кода
          ADCSRA |= (1 << ADSC);      //запуск АЦП
        }
        else
        {
          State = TC_CALC;            //процесс вычисления
        }
        break;
      }
    //вычисление температуры: 
    case TC_CALC:
      {
        int tcj = DS18B20_GetT();     //чтение термометра холодного спая
        if(tcj > T_ERROR)             //если ошибка, Tcj не обновляем
        {
          if(tcj < 0) tcj = 0;        //отсечение отрицательных температур
          Tcj = tcj;                  //обновление Tcj
        }
        Temp = Convert(AdcCode, Tcj); //вычисление температуры
        Update = 1;
        State = TC_START;             //измерение закончено, запуск
        break;
      }
    }
  }
  return(Update);
}

//---------- Вычисление температуры: ----------

int Convert(long code, int tcj)
{
  //вычисляем напряжения термопары в мкВ:
  int Vtc = (((code * ADC_REF) / ADC_RES) * 1000L) / (long)(FIR_N * GAIN);
  //проверка обрыва термопары:
  if(Vtc > (long)(V_BRK * 1E3)) return(TC_BRK);
  //вычисляем эквивалентное напряжения холодного спая:
  //делаем приближение, что в диапазоне рабочих температур
  //холодного спая коэффициент термопары постоянен
  //tcj имеет дискретность TCJ_RES
  //TC_K имеет размерность мкВ/°C
  //Vcj представлено в мкВ
  int Vcj = tcj * (int)(TCJ_K * TCJ_RES);
  //вычисляем напряжение термопары с компенсацией холодного спая:
  int Vhj = Vtc + Vcj;
  //находим целое число милливольт:
  signed char Index = Vhj / 1000;
  //проверяем выход за диапазон вниз:
  if(Index < 0) return(0);
  //проверяем выход за диапазон вверх:
  if(Index > TC_POINTS - 2) return(Lin[TC_POINTS - 1]);
  //читаем первую точку таблицы:
  int p1 = Lin[Index];
  //читаем вторую точку таблицы:
  int p2 = Lin[++Index];
  //вычисляем дельту на интервале 1 мВ:
  int DeltaT = p2 - p1;
  //вычисляем дробную часть милливольт:
  int DeltaV = Vhj % 1000;
  //линейная интерполяция по отрезку 1 мВ,
  //p1 - температура в десятых градуса:
  p1 = p1 + (long)DeltaV * DeltaT / 1000L;
  //применяем калибровку:
  p1 = (int)((long)p1 * Gain / GAIN_NOM) + Shift;
  return(p1);
}
         
//---------- Установка номинальной температуры холодного спая: ----------

bool TC_SetTcjn(int t)
{
  if(t >= TCJN_MIN && t <= TCJN_MAX)
  {
    Tcj = t;
    if(ETcjn != t) ETcjn = t;
    return(1);
  }
  return(0);
}

//---------- Чтение номинальной температуры холодного спая: ----------

int TC_GetTcjn(void)
{
  return(ETcjn);
}

//---------- Установка смещения температурной шкалы: ----------

bool TC_SetShift(int s)
{
  if(s >= SHIFT_MIN && s <= SHIFT_MAX)
  {
    Shift = s;
    if(EShift != s) EShift = s;
    return(1);
  }
  return(0);
}

//---------- Чтение смещения температурной шкалы: ----------

int TC_GetShift(void)
{
  return(Shift);
}

//---------- Установка наклона температурной шкалы: ----------

bool TC_SetGain(int g)
{
  if(g >= GAIN_MIN && g <= GAIN_MAX)
  {
    Gain = g;
    if(EGain != g) EGain = g;
    return(1);
  }
  return(0);
}

//---------- Чтение наклона температурной шкалы: ----------

int TC_GetGain(void)
{
  return(Gain);
}

//---------- Чтение температуры холодного спая: ----------

int TC_GetTcj(void)
{
  return(Tcj);
}

//---------- Чтение температуры: ----------

int TC_GetTemp(void)
{
  return(Temp);
}

//----------
Ответить

Вернуться в «Статьи»