А дело было так.
Приобрел я центробежку Giardino 401 для откачки воды из подпола, и оказалось что после часа работы насос остановился, перегрелся.
Это сработала термозащита. Обычно термодатчик приклеивают эпоксидкой к обмотке мотора, и при частом срабатывании
контакты термодатчика подгорают, и начинают уже греться сами.
Это приводит к сработке датчика при более низкой температуре, то есть перегрев это плохо.
Для устранения в первую очередь таких случаев и было создано это устройство.
схема:
Работает это так, при включении в сеть срабатывает слаботочное реле 5 вольт, оно включает промежуточное реле 220 вольт,
которое в свою очередь включает насос. Если в течении 30 секунд вода не пошла, то на индикаторе светится "А" авария, и подается звуковой сигнал, работа насоса прекращается и на индикаторе горит "С" стоп, а если пошла то сработает датчик холостого хода SW1 и на индикаторе загорится "П" пуск.
После 45 минут работы насос выключается, на индикаторе горит "С" стоп, и в течении 25 минут насос остывает.
И так циклы повторяются пока насос не откачает всю воду, при этом сработает датчик уровня SW2, насос
выключится ( на индикаторе горит "С" стоп), и подается звуковой сигнал.Устройство устойчиво отработало два сезона, правда датчик холостого хода пришлось отключить, при этом первый пуск насоса нужно контролировать визуально,т.е.вода пошла или нет.Сейчас изготавливаю другой датчик.
код:
'****************************************************************
'* Name : дляНАСОСАтаймер630.BAS *
'* Автор : Лобзанюк К.П. *
'* : *
'* : *
'* Дата : 18.08.2019 *
'* Версия : 1.00 *
'* : *
'* : *
'****************************************************************
Device = 16F630
Xtal = 4
Config CP_OFF, CPD_OFF, MCLRE_OFF ,BODEN_OFF, PWRTE_ON, WDT_OFF , INTRC_OSC_NOCLKOUT
OPTION_REG = %01000111
INTCON = %00100000 'TMR0 активизирован
'--------------------Настройки портов-----------------------
Declare All_Digital = On ;Установить все порты цифровыми входами/выходами
TRISA = %00000011 ' RА0...RА3 вход
TRISC = %00000000 ' RA3..RA7 выход
' ;==========================================================================
Symbol PIN = PORTC.4
Dim minut As Byte
Dim secund As Byte
Dim VAR1 As Dword
Dim flag As Bit ; работа пауза
Dim flag1 As Bit ; уровень воды
Dim flag2 As Bit ; сухой ход
'-------------------Инициирование прерываний-------------------
On Interrupt GoTo Pusk ' Включить обработку програмных прерываний
'--------------------------Главная программа--------------------------
flag = 0
flag1 = 1
flag2 = 0
main:
' If PORTA.1 = 1 Then PORTC.3 = 1 : GoTo tr1 : EndIf
' tr1:
If flag = 0 Then minut = 45 : PORTC.0 = 1 : PORTC.2 = 0: PORTC.1 = 1 : PORTC.5 = 0 : flag = 1 : GoTo Label1 : EndIf ; пуск 'для настройки
flag = 0 ; стоп 45
Pusk1:
GoSub Bee
DelayMS 2000
minut = 25 ; 25
PORTC.5 = 1
PORTC.0 = 1
PORTC.2 = 1
PORTC.1 = 0
If PORTA.1 = 1 Then GoTo Pusk1
'
GoTo Label3
Label1:
If PORTA.1 = 0 Then GoTo Label3
Enable
secund = 30
Label4:
VAR1 = 1
Repeat
DelayMS 1
If flag1 = 0 Then GoTo Pusk1
Inc VAR1
Until VAR1> 984 ; 918 нов 984 число сначала расчтывал потом подобрал для цикла 1 секунда
Dec secund
If secund > 0 Then GoTo Label4
If PORTA.1 = 1 Then GoTo Pusk1
Label3:
Enable
If minut = 0 Then GoTo Label6
Label2:
VAR1 = 1
Repeat
DelayMS 1
If flag1 = 0 And flag = 1 Then GoTo Pusk1 : EndIf
If flag2 = 1 Then GoTo Label1
Inc VAR1
Until VAR1> 59030 ; 55095 нов 59030 число сначала расчтывал потом подобрал для цикла1 минута
Dec minut
If minut > 0 Then GoTo Label2
Label6:
GoTo main
Bee:
' Disable
'Sound PIN, [98,20]
Sound PIN, [120,15]
PIN = 0
Return
'-------------------прерывание -------------------
Pusk: '
Disable
If PORTA.0 = 0 Then flag1 = 1 : GoTo tr : EndIf ; вода есть
flag1 = 0 ; воды нет
tr:
If PORTA.1 = 1 And flag = 1 And PORTC.2 = 0 Then PORTC.3 = 1 : flag2 = 1 : GoTo tr2 : EndIf ; убираем Е при стопе
'
PORTC.3 = 0
flag2 = 0 ; сухой ход
tr2:
INTCON.2 = 0
Resume
|
схема датчиков:
схема расположения насоса в подполе:
архив в протеусе:
|