Проблема с pic контролером

Обсуждаем цифровые устройства...
Ответить
iver88
Первый раз сказал Мяу!
Сообщения: 21
Зарегистрирован: Пн окт 11, 2010 16:48:12

Проблема с pic контролером

Сообщение iver88 »

Добрый день уважаемые коты, у меня такая проблема-
я собрал блок управления двигателями на pic16f84a , принцеп такой: контролер подаёт сигнал на оптопару, а она на симистор, а симистор управляет пускателем и запускается двигатель, на нём есть магнит который в свою очередь замыкает геркон , а геркон подаёт сигнал на контролер и тот переходит к другому двигателю, всё работает прекрастно до тех пор пока не подключен двигатель , после подключения контролер сбрасывается в начяло.
я выяснил что это происходит из за помех от наводки двигателя, подскажите как этого избежать ? заранее благодарен. вот сама программа:-
init:
TRISA = %00011111
PORTA = %00000000
PORTB = %00000000
TRISB = %00000000
DTK VAR PORTA.1 'КНОПКА ДВИЖЕНИЯ В ЛЕВО
DTL VAR PORTA.2 'ДАТЧИК ЛЕВЫЙ ДЕЛИТЕЛЯ
DTP VAR PORTA.3 'ДАТЧИК ПРАВЫЙ ДЕЛИТЕЛЯ
DTR var PORTA.4 'ДАТЧИК РАСТОЙКИ {ЗВЁЗДОЧКА)
DTG VAR PORTA.0 'ДАТЧИК ГОЛОВКИ
symbol MT1 = PORTB.0 'МОТОР В ЛЕВО
symbol MT2 = PORTB.1 'МОТОР В ПРАВО
SYMBOL LED = PORTB.7 'СИГНАЛЬНАЯ ЛАМПА
symbol MT3 = PORTB.2 ' МОТОР ГОЛОВКИ
SYMBOL LED1 = PORTB.4 'СИГНАЛ ЛЕВЫЙ
SYMBOL LED2 = PORTB.5 ' CИГНАЛ ПРАВЫЙ
SYMBOL LED3 = PORTB.3 ' СИГНАЛ ГОЛОВКИ
MAIN:
led = 1 'КНОПКА НАЧАЛЬНОЙ УСТАНОВКИ
if dtk = 0 then main1 ' если кнопка дтк нажата перейти к к установке на начало
goto main ' если нет то начять сначала
main1:
led = 0
LED1 = 1
HIGH MT1 ' движение к начальной точке
if dtl = 0 then main2 ' если кнопка дтл не нажата то перейти к опросу датчика дтр
goto main1 ' начать с мэин1
main2: '
LOW mt1 ' остановка на начальной точке
LED1 = 0
if dtr = 0 then main3 ' если датчик дтр сработал то перейти к движению вправо
goto main2 ' если нет то в начало мэин2
main3: '
mt2 = 1
LED2 = 1
LED3 = 1 ' движение вправо
MT3 = 1 ' РАБОТА ГОЛОВКИ
IF DTG = 0 THEN MAINA
GOTO MAIN3
MAINA:
MT2 = 1
LED2 = 1
pause 500
LED3 = 0
MT3 = 0
IF DTP = 0 THEN MAIN4
GOTO MAINA
main4:
mt2 = 0 ' остановка в правой половине
LED2 = 0
if dtr = 0 then main5 ' если датчик дтр сработал перейти к движению влева
goto main4 ' если нет то ждать
main5:
mt1 = 1 ' движение влево
LED1 = 1
LED3 = 1
MT3 = 1 ' РАБОТА ГОЛОВКИ
if dtG = 0 then mainB ' если дтл сработал то перейти к начальной точке
goto main5 ' если нет то продолжить
MAINB:
MT1 = 1
LED1 = 1
pause 500
LED3 = 0
MT3 = 0
IF DTL = 0 THEN MAIN2
GOTO MAINB
end
Реклама
Аватара пользователя
Dmitry Dubrovenko
Поставщик валерьянки для Кота
Сообщения: 2360
Зарегистрирован: Вс янв 09, 2011 16:51:39
Откуда: Санкт-Ленинград
Контактная информация:

Re: Проблема с pic контролером

Сообщение Dmitry Dubrovenko »

Ну, наверное, самое оптимальное - фильтры по питанию.
А ещё можно на ножки питания МК повесить электролит, микрофарад этак на 100, а само питание подавать через диод.
ICQ нет, и, в ближайшее время, не будет.
Реклама
iver88
Первый раз сказал Мяу!
Сообщения: 21
Зарегистрирован: Пн окт 11, 2010 16:48:12

Re: Проблема с pic контролером

Сообщение iver88 »

это всё хорошо но дело в том, что наводка идёт на сигнальные провода портаА, И ПОМОЖЕТ ЛИ В ДАННОМ СЛУЧАЕ , ФИЛЬТРАЦИЯ ПО ПИТАНИЮ?
Аватара пользователя
Roman Venom
Сверлит текстолит когтями
Сообщения: 1135
Зарегистрирован: Сб июл 11, 2009 18:42:21
Откуда: Украина, г.Николаев

Re: Проблема с pic контролером

Сообщение Roman Venom »

iver88
я выяснил что это происходит из за помех от наводки двигателя
Точно? Интересно, как помехи пролазят в контроллер по сигнальным проводам, если у вас гальваническая развязка оптотранзистором.
Т.е. помехи могут пролазить только по земле, т.е. надо разделить землю сигнальную от земли силовой. Например, с помощью ДС-ДС преобразователя :).

Dmitry Dubrovenko
А ещё можно на ножки питания МК повесить электролит, микрофарад этак на 100
:shock:
Успех - императив!
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Dmitry Dubrovenko
Поставщик валерьянки для Кота
Сообщения: 2360
Зарегистрирован: Вс янв 09, 2011 16:51:39
Откуда: Санкт-Ленинград
Контактная информация:

Re: Проблема с pic контролером

Сообщение Dmitry Dubrovenko »

iver88 писал(а):это всё хорошо но дело в том, что наводка идёт на сигнальные провода портаА
Меня тоже интересует, откуда такая уверенность?
Roman Venom писал(а)::shock:
Непонятно изложил? :))
Показываю на схеме: http://www.pirpk.narod.ru/ddssite/dshwrf1w.htm
ICQ нет, и, в ближайшее время, не будет.
Реклама
Аватара пользователя
Roman Venom
Сверлит текстолит когтями
Сообщения: 1135
Зарегистрирован: Сб июл 11, 2009 18:42:21
Откуда: Украина, г.Николаев

Re: Проблема с pic контролером

Сообщение Roman Venom »

Dmitry Dubrovenko
По-моему в любом ПТУ рассказывают для чего надо изолировать силовуху от управляющей части. Что касается кондёра на ноге питания (кстати производитель рекомендует плёнку 0.1мкФ) - то хоть сто тыщ туда повесь, но по земле помехи будут лезть, что будет видно, прежде всего, по работе АЦП. Поэтому надо ставить ДС-ДС на питание МК а не танцевать с бубном :evil: Либо запитывать от другого БП.
Успех - императив!
Реклама
Аватара пользователя
Dmitry Dubrovenko
Поставщик валерьянки для Кота
Сообщения: 2360
Зарегистрирован: Вс янв 09, 2011 16:51:39
Откуда: Санкт-Ленинград
Контактная информация:

Re: Проблема с pic контролером

Сообщение Dmitry Dubrovenko »

Я в ПТУ не учился. :))
Вы забываете, что и у топикстартера (насколько я понял, во всяком случае), и у меня, схемы управления уже развязаны от силовых.
ICQ нет, и, в ближайшее время, не будет.
Ответить

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