• Объявления

    • admin

      Просьба всем принять участие!   24.11.2017

      На форуме разыгрывается спектроанализатор Arinst SSA-TG LC (цена 18500 руб). Просьба всем перейти по ссылке ниже и принять участие!
trijdyded

Реле контроля напряжения на PIC12F675

26 сообщений в этой теме

trijdyded    0

Всем здравия!

Появилась нужда в контроле сетевого напряжения - спалил сварочник. Починил, но решил в него всунуть реле защиты. Готовые дороговаты, подумал самому слепить. Нашел схему реле.

С хозяином схемы списывался, но его уже год нет на сайте - ушел в политику.

59774ee2aa993_.thumb.gif.be806d1491d6883c720797db2f169507.gif

Решил в Протеусе смоделировать.  Заодно и азы поизучать (правда, мозги уже не те). Набросал схему. На ножку 3 подал напряжение с переменника от 5 вольт. Сетевое выпрямленное делится в схеме реле в 100 раз (R5, R7), т.е. на контроллер подается где-то в районе 2...3 вольта. Вместо реле на ножку 2 бросил светодиод D1. Модельку запускаю, моргает только светодиод D6, а D1 молчит. При любом положении переменника ничего не происходит.

model.thumb.gif.1a63c92a3a33f7e4940be15564d85874.gif

Протеус ошибок не дает, а куда копать не представляю.

Еще не знаю что значат поля в свойствах контроллера "Program Configuration Word" (там значение 0x3FF4) и ниже "Advanced Properties:"

pic12.gif.e80062aafff7dc9d280e4d63bc7cbc79.gif

Моделька и прошивка:

AutoMAT_v1.hex

pic12_ukraina.pdsprj

Благодарю за помощь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Быстрый заказ печатных плат

Полный цикл производства PCB по низким ценам!

  • x
    мм
Заказать Получить купон на $5.00
IMXO    1 106

для начала микроконтроллеру надо прописать соответствующий бит конфигурации 0x311C

питание на RV1 подать через диод с генератора синуса 50Гц амплитудой 5в

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
KRAB    3 948
3 часа назад, trijdyded сказал:

решил в него всунуть реле защиты

посмотри как это сделано в промышленных ... намного проще без МК.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
KomSoft    129

Я несколько лет назад по причине отказа (отпускания реле при просадке напряжения) возился с реле напряжения РН-40 - оно чисто "аппаратное" без МК. А второе "Устройство защиты от критических изменений сети 220 Вольт" с сайта Радоидед (http://radioded.ru/skhema-na-mikrokontrollere/ustroystvo-zaschity-ot-kriticheskih-izmeneniy-seti-220-v) делал сам на TINY 26L (тоже с доработками и усовершенствованой прошивкой). Уже несколько лет оба работают прекрасно. Если интересен какой-то из этих вариантов - поделюсь собраной по ним информацией.

А вот здесь на всякий случай - http://radioded.ru/forum/viewtopic.php?t=690 информация по необходимым доработкам для повышения надежности заводских! реле (которые я частично делал для своего РН-40)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
trijdyded    0

Всех благодарю за ответы!

Сначала вопрос: "Бит конфигурации 0x311C - почему именно такой? " Он высчитывается или для данного МК такой?

Теперь по модельке. Во-первых, разобрался с элементами в Протеусе. Конкретно со светодиодами. По умолчанию светодиод имеет падение 2,2В и ток свечения 10 мА. НО, это модель. Поэтому при подаче 5 вольт через резистор 1 К через него течет 5-2,2:1=2,8 мА. И в модельке он не горит! Уменьшив в параметрах ток до 1 мА - диод заработал! Теперь все семь диодов светятся.

Входную цепь смоделировал как в схеме. Только вставил переменник. Его прикинул, как и в послед стоящий резистор так, чтобы на движке было порядка 1,6В (считай 160В по сети) для пониженного напряжения и 2,7В - для повышенного. С запасом. В схеме делитель четко делит входное сетевое в 100 раз.

И моделька заработала! Крутишь переменник, светодиодики от желтых до красного загораются, и основной (выход на реле) "то потухнет, то погаснет". Включается потом с задержкой. Как все и описывал автор.

 model-2.gif.4a173851be54aab874cacb078e4b94d0.gif

На этой модельке я остановился, потому что программно ошибок нет. А начал со схемы Н.И.Заец "Устройство защиты без индикации". Но прошивку  ****.hex в инете не нашел, поэтому ручками через блокнотик наколотил. Благо не большая. Но МК не запустился, Протеус дал ошибку. Видимо при печати книги ляпнулись. Под руками есть PIC16F676, поэтому с Зайца и начал. Ну, и то, что схема была без индикации.

Вообщем, буду дерзать дальше. Про РН-40 почитал. Полезного много.

Еще надо будет разобраться где в коде временные задержки и уровни срабатывания. Будем вспоминать молодость :-)) 

 

Изменено пользователем trijdyded

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Zhuk72    10

Насколько я знаю, конфигурацию в Протеусе можно не вводить, если она присутствует в самой прошивке. По крайней мере я никогда не вводил этот параметр и все эмулировалось точно по программе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alexeyslav    590

МОжет у тебя программа рассчитана была под конфигурацию по умолчанию, поэтому и работала.

Конфигурация контроллера кардинально влияет на его работу и должна быть проведена осмысленно, и поидее слово конфигурации должно быть неотъемлемой частью прошивки/проекта.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Zhuk72    10

Я сам пишу то, что отлаживаю, и знаю что такое конфигурация, т.к. сам же и выставляю ее в программе.

Отсутствие кварца и питания на ногах МК в Протеусе ведь никак не мешает его работе, верно? Если кварц предусмотрен в программе/конфиге и его частота указана в настройках МК в Протеусе, значит он так и будет работать. А если  в конфиге прописан INTOSC, то сколько ни расписывай настройку МК в Протеусе, он на эти МГц и смотреть не будет.

Так же и с конфигом. Если он есть в прошивке, можете в Протеусе вообще стереть эту строку, все будет работать как указано в прошивке.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alex    525

Для PIC'ов конфигурация в протезе неактуальна, он "подхватывает" ее из hex'а

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IMXO    1 106

может у меня протез не такой, но пока ручками не пропишешь правильно не работает....

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
trijdyded    0

Всем мира!

А то передряга пошла. В Протеусе и от балды бит вставил, и пустое поле оставил - всё работает.

Т.к. еще тупой и мозгов-времени не хватат, то взял у автора еще две прошивки, где он увеличил время "отпускания" после восстановления нормального напряжения до 120 и 200 сек. И hex файлы сравнил в Total Commandere. Красным Тотал подсветил отличие.

sravnenie.thumb.gif.7aba5da345f14f7bdf9f6d0b2fb3862b.gif

Но теперь как лучше увидеть к чему все эти байтики? Где команда, где значение?

Поставил и запустил MPLAB. Дал такую картинку. Попытался найти последовательность байтов как в HEXe, что-то не нашел.

MPLAB-120.thumb.gif.5d55f5d0362621926c5ba4ea42372aa0.gif

Какие еще есть проги чтобы раздезить HEX файлики? Или скажите, где туплю.

Еще раз повторюсь. Всё это делаю, чтобы найти участки, где выставлются пороги напряжений и временная задержка.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alexeyslav    590

Проще самому написать прошивку чем расковыривать чужую. Обычно это делают вручную, особенно для таких маленьких прошивок.

А ты пробовал сопоставлять команды по адресам ячеек?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Zhuk72    10
8 часов назад, trijdyded сказал:

Какие еще есть проги чтобы раздезить HEX файлики?

https://xtronic.org/download/microcontroller/picdisasm-converts-a-hex-in-an-asm-file-2/

Еще можно попробовать попросить у автора исходники.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alexeyslav    590

Да насмешили... дизасмить, при том что исходник скорей всего на С написан, потом в том коде ногу сломишь. Тут опыт нужен, как минимум писания прошивок на асме чтобы дизасемблированием заниматься, и никакие проги не спасут. А ежели у вас есть опыт, то ПРОЩЕ и БЫСТРЕЕ будет написать свою прошивку!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IMXO    1 106
3 часа назад, Zhuk72 сказал:

чем это ему поможет? те же яйца вид в профиль что и МПЛАБ.

12 часа назад, trijdyded сказал:

Или скажите, где туплю.

даю наводку , когда заканчивается задержка дрыгается 5я нога.... ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Zhuk72    10

Человек попросил альтернативу, и получил ее.

Я не помню как можно сохранить дизасм в МПЛАбе. Есть ли там это вообще. А в той программе текст сохраняется, его можно скормить Протеусу и пошагать до нужного момента.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
trijdyded    0
13 часа назад, IMXO сказал:

чем это ему поможет? те же яйца вид в профиль что и МПЛАБ.

даю наводку , когда заканчивается задержка дрыгается 5я нога.... ;)

Даю на ВОДКУ мне понравилось!!! Что-то мне кажется, что надо стаканы кому-то ставить. Дейст-но, с нуля всегда проще, чем ковыряться. Сам не осилю - эт точно. У меня уже время сильно сжалось.

PIC-Disasm по ссылочке скачал. На выходе что-то похожее как и в MPLABe (те же яйца).

По поводу пятой ноги. После запуска модельки светодиодики опрашиваются туда-сюда, типа, проверка их. Да, и красиво. Потом где-то с тридцатого шага похоже идет замер сетевого напряжения, включение соответствующего диода, показывающего уровень сети, и через несколько шагов включение реле (вторая нога). Если бы рядом были строчки кода и пошагово было их видно - было бы наглядно. 

Тут давеча принесли коробочку (однако народ вокруг озабочен защитой). Раскрыл ее. Там ATMEL MEGA48PA. И разъемчик с четырьмя ножками рядом. Похоже, готовую плату и программируют.

PH-117.thumb.jpg.c6f2eaa47bb45fec9ea4d5679b19b0a1.jpg

Но опять ковыряться - те же грабли. Покупать, ломать и вставлять куда мне надо - не наш метод. Тем более, что сам должен выставить пороги и задержку. 

Вообщем, "даюнаводку"! С фотошопом дружнее получается, чем с протеусолабами. Можь, потом и осилю. А сейчас помощь нужна. Кто готов - отзовитесь. 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IMXO    1 106
3 часа назад, trijdyded сказал:

через несколько шагов включение реле (вторая нога)

это вывод второй,а нога пятая.. и взводится она только в одном месте кода

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Zhuk72    10
В 8/4/2017 в 17:41, trijdyded сказал:

Потом где-то с тридцатого шага похоже идет замер сетевого напряжения, включение соответствующего диода, показывающего уровень сети, и через несколько шагов включение реле (вторая нога). Если бы рядом были строчки кода и пошагово было их видно - было бы наглядно.

Ну так полученный асм листинг заведите в Протеус и будут видны строки кода при пошаговом исполнении. Source->Add/Remove... и т.д. Ну и скомпилировать нужно там же (Build all).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alexeyslav    590

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Zhuk72    10

И посложнее вещи, написанные на Си, дизассемблируются и успешно собираются назад.

ТС что-то посоветовать можете, кроме как написать с нуля? Или только других комментировать можете?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IMXO    1 106
1 час назад, Zhuk72 сказал:

ТС что-то посоветовать можете, кроме как написать с нуля?

ну как что, обратится к разработчику, дать денег и выкупить исходник...

ЗЫ ТС как-то не бодро озвучивает размер благодарности за  "А сейчас помощь нужна. Кто готов - отзовитесь." 

реинженеринг всегда был "услуга платный"

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
trijdyded    0

Здравия всем!

Разобраться мне во всем - вопрос времени (кот. для меня бежит по экспоненте :rolleyes:).  Глядишь, и внуков приобщу.

Тут полазив по железякам, обнаружил, что внутренняя защита стоит именно в сварочниках (есть знакомые сварщики и продавцы) и в бесперебойниках. Мой сварочник дешевый, поэтому там защиты нет, а в дорогих уже ставят.

Т.к. вокруг соседям эта тема интересна - один даже хочет вставить в удлинитель. Правда, только интерес к пониженному напряжению. Косилки, Кёрхеры боятся этого. Эт я к тому, что скинемся!

Поэтому кто может разлочит коды или с нуля написать прошивку (лучше под 676 - их много мне отдали) готов принять. Что стоит - не знаю, никогда продавцом и торгашем не был - "как простой инженер, он идет - мы его не замечаем" (это по Райкину). Поэтому реальный труд - реальные денюжки. Пишите. Телефон могу дать. Нахожусь в Москве+область.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ваша публикация должна быть проверена модератором

Гость
Вы не авторизованы. Если у вас есть аккаунт, пожалуйста, войдите.
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Восстановить форматирование

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Загрузка...

  • Похожие публикации

    • Автор: Mayder
      Здравствуйте. Есть желание сделать пропорциональное радиоуправление для модели машинки на пике. Программировать пока не умею, но микры и программатор уже есть. Рассматривал статьи в интернетах, но путевого мало. Нашел хорошую статью на VRTP , все прочитал и запутался в количестве архивов прошивок. Еще нашел схему кодера на сайте ссылка , но здесь только кодер. По данным с других форумов вычитал, что там используется стандартный PPM сигнал (или стандарт!?), а это значит что декодер туда можно подсунуть любой.
      Проблема в том, что на первом форуме автор делал управление катером (без заднего хода, хотя вроде можно подключить реверсивный регулятор и все заработает как нужно, применен также стандартный PPM. И конструкция пульта смущает, не могу разобраться в подключении потенциометров), а на втором сайте автор делал для самолета, и там так же отсутствует задний ход значит, но если сигнал стандартный, то также можно подключить реверсивный регулятор и все будет хорошо.
      Если оба РУ сделаны под стандартный протокол, то можно совместить же кодер с сайта и декодер с форума VRTP? Кодер проще второй, а регулятор имеется простой с форума. И есть вообще еще люди, кто могут отозваться о работоспособности этих вариантов? Надеюсь на помощь разбирающихся
    • Автор: Batai
      Здравствуйте, помогите пожалуйста разобраться с подключением радиопередатчика FS1000A к PIC16F628A и приемника XD-RF-5V к PIC12F675.
      Передатчик передает сообщение такого вида:
      Сначала передается сигнал начала сообщения - 10 мс, сразу за ним 0 бит и через каждые 20мс остальные биты.
      Приемник последовательно записывает сигналы и пишет готовый байт в GPIO.
      Все замечательно работает через провод и не реагирует при подключении приемника и передатчика.
      В чем может быть проблема?
      Не судите строго, все придумывал сам=)
    • Автор: Alexstrok
      Всем здравствуйте! Когда-нибудь заметили, что Тахометр всегда встречаются на МК как PIC16F628a, PIC16F628, PIC12f629 и другие.
      А что будет, если поставим тахометр на PIC12F675, где меньше всего "многоножек"?
      С помощью просторы интернета собрал схему на PIC16F628a на протеусе. (Прикрепил здесь)
      Там на схеме генератор импульсов и счетчик, таким образом получаю количество оборотов в минуту, с делителем на 2 при 100 герце будет 3000 оборотов в минуту, а можно без делителя - то 6000.
      Пытался найти альтернативы, как создать тахометр на PIC12F675, не получается. Кто-нить из вас знает, как сделать на протеусе? Прошу поделиться, товарищи.
      Может поможет картинка, которая показывает, что при достижении оборотов, установленных кнопкой "SET" вспыхивает ярко красный светодиод после свет приглушается и остается таковым до уменьшения оборотов ниже установленного уровня. Все это дело сопровождается писком.
      Тахометр на PIC16F628a.rar

    • Автор: teapot
      Здравствуйте, уважаемые.
      Написал код манчестера использя встроеную библиотеку mikroc pro для PIC16F877 (на приемнике и передатчике). Работает все отлично.
      Появилась необходимость сделать передатчик на PIC12F675. Но вот тот же код переписать под этот МК неудалось. (нет генирации на GP0/ тестил в протеусе)
      Есть сомнения в указании портов при конфигурации (выделил жирным)

      /* --------------- Конфигурация МК под манчестер-код ------------------------*/ sbit MANTXPIN at [b]GP0[/b]_bit; sbit MANTXPIN_Direction at [b]TRISIO0[/b]_bit; /*---------------------- Конец конфигунации ---------------------------------*/ short a; void main() { a=123; Man_Send_Init(); // Инициализация передатчика while (1) { // Бесконечный цикл Man_Send(0x0B); // Отправка стартового бита Delay_ms(100); // Пауза Man_Send(a); // Отправка значения а Delay_ms(90); // Пауза Man_Send(0x0E); // Отправка конечного бита сообщения Delay_ms(500); // Пауза } }
      Есть какие мысли по поводу?
    • Автор: Lev@
      Решил прошить PIC 12F629, прога протестирована в PIC emulator IDE, в Proteus - работает - 100%, но ПИК не шьется!.
      Программатор - Pony Prog, софт - IC prog 1.06 выдает ошибку еще до этапа заливки программы:
      Естественно я сразу же(через пару часов танцов с бубном) забил в "поиск" - вот этот програматор прошьет - паяйте, вот с этим софтом не будет проблем - качайте...
      Еще полтора часа на закачку и пайку програматора, а результат тотже!
      Мозг кипит - ЧТО делать???!!!