Управление электромагнитным клапаном на PIC16F873A
Re: Управление электромагнитным клапаном на PIC16F873A
Произошла маленькая авария, разогрелся МК. При включении было дрожание показаний индикатора, я начал работать с настройками и через некоторое время заметил что на индикаторе err и МК горячий.
Остудил, перепрошил, вроде бы наладилось.Сейчас так:
1. На индикаторе чередуется показания температуры и err.
2. При достижении t2 OUT = 0.
Надо чтобы формула считала дальше, т.е. n=n2 + (n1-n2)*(t2-t)/(t2-t1)
после t2 продолжается рост температуры
(n1-n2)*(t2-t)/(t2-t1) становится отрицательным и вычитается из n2.
OUT должен стать нулем при n=0
Если подставить реальные цифры: n1=600, n2=200, t1=84, t2=95 это произойдет при t=100,5.
Но до этого реальный процесс не доходит (t кипения воды).
3. Остальное вроде бы как надо.
Остудил, перепрошил, вроде бы наладилось.Сейчас так:
1. На индикаторе чередуется показания температуры и err.
2. При достижении t2 OUT = 0.
Надо чтобы формула считала дальше, т.е. n=n2 + (n1-n2)*(t2-t)/(t2-t1)
после t2 продолжается рост температуры
(n1-n2)*(t2-t)/(t2-t1) становится отрицательным и вычитается из n2.
OUT должен стать нулем при n=0
Если подставить реальные цифры: n1=600, n2=200, t1=84, t2=95 это произойдет при t=100,5.
Но до этого реальный процесс не доходит (t кипения воды).
3. Остальное вроде бы как надо.
Re: Управление электромагнитным клапаном на PIC16F873A
variaevg писал(а):Произошла маленькая авария, разогрелся МК.
Причина не выяснена? Не повторяется?
variaevg писал(а):1. На индикаторе чередуется показания температуры и err.
До аварии это было или нормально?
variaevg писал(а):Надо чтобы формула считала дальше...
Изменил, но не проверял.
- Вложения
-
- Valve_control_PIC16F873A.zip
- (4.45 КБ) 163 скачивания
Re: Управление электромагнитным клапаном на PIC16F873A
Причина не выяснена? Не повторяется?
Не знаю. Пока тьфу, тьфу.
До аварии это было или нормально?
До аварии не было. Думаю взаимосвязано.
Сейчас проверю последнее.
Re: Управление электромагнитным клапаном на PIC16F873A
1. Чередование индикации и err носят хаотичный характер, в тот период времени когда показывает err выход OUT = 0. Попробую уменьшить номинал подпирающего на плюс резистора.
2. В ручном режиме (A/R=0) параметр О показывает как в автоматическом O=n*k, должно быть O=n0*k.
3. При включении питания и до температуры t1 параметр О равен 0. При достижении t1 начинает показывать, даже если температура снизилась меньше t1. Надо чтобы всегда.
4. Остальное вроде в порядке. МК больше пока не греется.
Я извиняюсь дотошно займусь завтра, вызвали на работу.
2. В ручном режиме (A/R=0) параметр О показывает как в автоматическом O=n*k, должно быть O=n0*k.
3. При включении питания и до температуры t1 параметр О равен 0. При достижении t1 начинает показывать, даже если температура снизилась меньше t1. Надо чтобы всегда.
4. Остальное вроде в порядке. МК больше пока не греется.
Я извиняюсь дотошно займусь завтра, вызвали на работу.
Re: Управление электромагнитным клапаном на PIC16F873A
variaevg писал(а):1. Чередование индикации и err носят хаотичный характер, в тот период времени когда показывает err выход OUT = 0. Попробую уменьшить номинал подпирающего на плюс резистора.
Я немного изменил работу с датчиком, попробуйте сначала эту прошивку.
variaevg писал(а):2. В ручном режиме (A/R=0) параметр О показывает как в автоматическом O=n*k, должно быть O=n0*k.
Теперь и в ручном считает.
variaevg писал(а):3. При включении питания и до температуры t1 параметр О равен 0. При достижении t1 начинает показывать, даже если температура снизилась меньше t1. Надо чтобы всегда.
Этого я не понял. Что "Надо чтобы всегда."? О вычисляется по Вашей формуле, неправильно?
- Вложения
-
- Valve_control_PIC16F873A.zip
- (4.49 КБ) 165 скачиваний
Re: Управление электромагнитным клапаном на PIC16F873A
Наконец то освободился.
1. Появление надписи err происходит по такой закономерности:
- При A/R=1
3 импульса на выходе OUT, затем не надолго err (на выходе 0), потом повторятся снова и снова.
- При A/R=0 все нормально.
2. НОТ не работает при A/R=0
Надо чтобы он зависил только от t0 при любых режимах.
t меньше t0 HOT=0
t больше или равен t0 HOT=1
Имелось ввиду чтобы вычисление и индикация происходили во всем диапазоне температур.
1. Появление надписи err происходит по такой закономерности:
- При A/R=1
3 импульса на выходе OUT, затем не надолго err (на выходе 0), потом повторятся снова и снова.
- При A/R=0 все нормально.
2. НОТ не работает при A/R=0
Надо чтобы он зависил только от t0 при любых режимах.
t меньше t0 HOT=0
t больше или равен t0 HOT=1
того я не понял. Что "Надо чтобы всегда."? О вычисляется по Вашей формуле, неправильно?
Имелось ввиду чтобы вычисление и индикация происходили во всем диапазоне температур.
Re: Управление электромагнитным клапаном на PIC16F873A
variaevg писал(а):Имелось ввиду чтобы вычисление и индикация происходили во всем диапазоне температур.
С этим и другим разберемся после того, как будет нормально работать датчик.
Пока внес изменения в прошивку в части работы с датчиком. Проверил на макете с PIC16F628A (насколько это возможно), измерение температуры сейчас нормально.
- Вложения
-
- Valve_control_PIC16F873A.zip
- (4.5 КБ) 142 скачивания
Re: Управление электромагнитным клапаном на PIC16F873A
err больше не пояиляется.
Re: Управление электромагнитным клапаном на PIC16F873A
Хорошо, теперь давайте проверять заново, что там не так в логике.
Re: Управление электромагнитным клапаном на PIC16F873A
По параметру "О".
При A/R=0. Включаем питание: О показывает правильно, на OUT есть импульсы.
Переключаем на A/R=1 все равно показывает то же значение что и при A/R=0, кроме того на OUT=0.
При достижении t1 начинает показывать правильно.
При A/R=1. Включаем питание: О показывает 0, на OUT есть импульсы. При достижении t1 начинает показывать правильно.
При переключении на A/R=0 начинает показывать правильно. Если переключить на A/R=1 показывает то же значение что и при A/R=0 но импульсы идут.
Я почему то думаю что лучше не править, а записать заново:
Для всего диапазона температур
При A/R=0 (ручной режим)
O=n0*k
При A/R=1 (автоматический режим)
O=n*k
И он не должен зависить от температуры и A/R.
НОТ не работает при A/R=0
Надо чтобы он зависил только от t0 при любых режимах.
t меньше t0 HOT=0
t больше или равен t0 HOT=1
При A/R=0. Включаем питание: О показывает правильно, на OUT есть импульсы.
Переключаем на A/R=1 все равно показывает то же значение что и при A/R=0, кроме того на OUT=0.
При достижении t1 начинает показывать правильно.
При A/R=1. Включаем питание: О показывает 0, на OUT есть импульсы. При достижении t1 начинает показывать правильно.
При переключении на A/R=0 начинает показывать правильно. Если переключить на A/R=1 показывает то же значение что и при A/R=0 но импульсы идут.
Я почему то думаю что лучше не править, а записать заново:
Для всего диапазона температур
При A/R=0 (ручной режим)
O=n0*k
При A/R=1 (автоматический режим)
O=n*k
И он не должен зависить от температуры и A/R.
НОТ не работает при A/R=0
Надо чтобы он зависил только от t0 при любых режимах.
t меньше t0 HOT=0
t больше или равен t0 HOT=1
Re: Управление электромагнитным клапаном на PIC16F873A
А теперь?
- Вложения
-
- Valve_control_PIC16F873A.zip
- (4.53 КБ) 140 скачиваний
Re: Управление электромагнитным клапаном на PIC16F873A
Осталось навести порядок с выходом BUZ.
BUZ должен 1 раз становиться 1 на 30 сек при достижении температуры t2.
Сейчас при t больше t2 выход BUZ перезапускается и получается серия импульсов длительностью 30 сек.
Забыл записать в ТУ то же самое и при температуре t0.
Остальное порядок.
BUZ должен 1 раз становиться 1 на 30 сек при достижении температуры t2.
Сейчас при t больше t2 выход BUZ перезапускается и получается серия импульсов длительностью 30 сек.
Забыл записать в ТУ то же самое и при температуре t0.
Остальное порядок.
Re: Управление электромагнитным клапаном на PIC16F873A
variaevg писал(а):Осталось навести порядок с выходом BUZ.
BUZ должен 1 раз становиться 1 на 30 сек при достижении температуры t2.
Сейчас при t больше t2 выход BUZ перезапускается и получается серия импульсов длительностью 30 сек.
Так делал специально, Вы не описали процедуру сброса звукового сигнала. Он однократный? Сброс только отключением питания?
variaevg писал(а):Забыл записать в ТУ то же самое и при температуре t0.
Что это значит? Подробнее.
Re: Управление электромагнитным клапаном на PIC16F873A
Вы не описали процедуру сброса звукового сигнала. Он однократный? Сброс только отключением питания?
Сигнал однократный, отзвенел и все. Следующий раз при следующем процессе после перезапуска по питанию.
Что это значит? Подробнее.
Сформировать точно также сигнал BUZ при t0, как и для t2.
Re: Управление электромагнитным клапаном на PIC16F873A
variaevg писал(а):Сформировать точно также сигнал BUZ при t0, как и для t2.
Я не отслеживаю всю логику работы данного устройства, но мне казалось, что t0 всегда выше t2 (ну или наоборот, тот же эффект). То есть, если например, сработает сигнализация по t2, то при достижении t0 она уже не сработает в связи с принятой политикой, что следующая активация звукового сигнала только после отключения питания. Это так? Или для t0 одно срабатывание, и еще одно для t2? Пока я сделал всего одно срабатывание, что раньше...
- Вложения
-
- Valve_control_PIC16F873A.zip
- (4.55 КБ) 161 скачивание
Re: Управление электромагнитным клапаном на PIC16F873A
мне казалось, что t0 всегда выше t2
На графике в ТУ все температуры обозначены. При росте температуры расположены так: t0, t1, t2.
Или для t0 одно срабатывание, и еще одно для t2?
Точно так. Сигнал BUZ формируется в обоих случаях.
Re: Управление электромагнитным клапаном на PIC16F873A
Сейчас в Протеусе заметил, что при A/R=0 (ручной режим) размыкая датчик на индикаторе не появляется err и выход OUT не переводится в 0.
Re: Управление электромагнитным клапаном на PIC16F873A
variaevg писал(а):Сигнал BUZ формируется в обоих случаях.
Проверяйте.
- Вложения
-
- Valve_control_PIC16F873A.zip
- (4.55 КБ) 156 скачиваний
Re: Управление электромагнитным клапаном на PIC16F873A
variaevg писал(а):...при A/R=0 (ручной режим) размыкая датчик на индикаторе не появляется err и выход OUT не переводится в 0.
На то он и ручной...
Re: Управление электромагнитным клапаном на PIC16F873A
На то он и ручной...
Думал,думал. А что наверное пусть будет так.
Огромное спасибо! Вы очень выручили!
Буду еще тестировать, в том числе в составе остальной автоматики.
Результат отпишусь.