![]() |
+7-978-708-85-73 Дроссель Amadeus Productions. Быстрый заказ по телефону. (Viber, WhatsApp, Telegram) |
![]()
Сообщение
#1
|
|
Технический Маньяк-Гуру ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Технический Маньяк Сообщений: 7049 Регистрация: 3.6.2009 Из: Армения Вне форума Авто: Lancer IX, AT Репутация: ![]() ![]() ![]() |
* * *
Данная разработка и любая ее версия являются собственностью лично Сергей SSh и компании Amadeus Project. Авторы не против самостоятельного повторения данной разработки и любой ее версии в личных целях. Авторы категорически против коммерческого применения данной разработки любой версии любым другим лицом кроме владельцев. * * * Решил все-таки открыть новую тему, чтоб не устройство не затерялось на задворках старой (IMG:style_emoticons/default/wink.gif) В той теме (http://forum.amadeus-project.com/index.php?showtopic=1203) была поставлена задача заставить моргать поворотник определенное число раз при легком касании к рычагу (не фиксируя его при этом) плюс автоматически включать аварийку при движении задним ходом. Детальное изучение сигналов подрулевого ЭБУ показало, что все команды он воспринимает путем сканирования поступающих с контактов (поворотника, габаритов, стеклоочистителей). Так, что, простыми средствами словить нужный сигнал никак не получится. Для интересующихся, выкладываю осциллограммы сигналов Сам импульс: ![]() Их последовательность: ![]() После изготовления нескольких вариантов устройства на обычных элементов окончательно удостоверился в бесперспективности этого направления и было решено применить МК. Разработка и изготовление устройства вместе с прошивкой заняло чуть более часа (сравнить с 2-мя неделями...). Сегодня испробовал на машине - работает отлично. Выкладываю схему и прошивку. Небольшой нюанс - на очень быстрое касание рычага устройство не реагирует, поворотник моргнет 1 раз, для серии миганий надо придержать рычаг в течении примерно пол-секунды. При установленном значении переменной PulseTime (см. ниже - 3000мс = 3сек.) времени хватает на 4 "тик"-а. Для любого другого числа просто надо скорректировать указанную переменную из расчета 0,7 сек. на одно подмигивание (по крайней мере на моем авто частота такая, измерял). Разводку пока не делал, т.к. хочу на той же плате смонтировать регулятор частоты взмахов стеклоочистителя, но схема настолько примитивна, что развести её не составит труда. Причем если что, то можно (как уже где-то писал) можно развести как удобно, просто потом сделать соотв. поправки в прошивке. Схема: ![]() Готовое устройство (IMG:style_emoticons/default/biggrin.gif) ![]() Точки подключения к подрулевуму ЭБУ: ![]() Исходник прошивки: Код '*********************************************
'* Name : Turn.bas * '* Author : SSh * '* MCU : PIC12F675 * '* OSC : Internal, 4MHz * '* Date : 07.03.2010 * '* Compiler : PicBasic Pro 2.60 * '* Description: Turn signal one-touch system * '********************************************* ' +5V - 1 -|Vdd GND|- 8 - Ground 'RightIn - 2 -|GP5 GP0|- 7 - Rear 'LeftIn - 3 -|GP4 GP1|- 6 - RightOut '+ 10kOhn - 4 -|MCLR GP2|- 5 - LeftOut '**************************************************************************** *** ' ## Set MCU & OSC - Internal, GP4 - I/O, GP5 - I/O ## @ DEVICE pic12F675, INTRC_OSC_NOCLKOUT DEFINE OSC 4 ' Internal Freq. 4 MHz 'Variables Left VAR WORD Right VAR WORD ' I/O Ports LeftIn var GPIO.4 LeftOut var GPIO.2 RightIn Var GPIO.5 RightOut var GPIO.1 Haz Var GPIO.0 'Constants PulseTime con 3000 ' Delay time = 3s, 3...4 pulses TRISIO = %111001 ' RA1, RA2 - Output ANSEL = 0 ' All pins - digital CMCON = %00000111 ' Comparators - Off GPIO = 0 pause 500 ' Start-time pause ' ################################## ' ### Main part, working forewer ### ' ################################## main: PULSIN RightIn, 1, Right ' Look for pulse if Right < 8 Then ' Pulse not found gosub RightTurn ' Turn on right turn-signal Endif PULSIN LeftIn, 1, Left if Left < 8 Then ' Turn on left turn signal gosub LeftTurn Endif If Haz = 0 then gosub hazard endif GOTO main ' Loop ' ### End of main part ### ' ################### ' ### Subroutines ### ' ################### RightTurn: RightOut = 1 pause PulseTime RightOut = 0 lloop: PULSIN RightIn, 1, Right if Right < 8 Then goto lloop Endif return LeftTurn: LeftOut = 1 pause PulseTime LeftOut = 0 rloop: PULSIN LeftIn, 1, Left if Left < 8 Then goto rloop Endif return hazard: hloop: if Haz = 0 then RightOut = 1 LeftOut = 1 goto hloop else RightOut = 0 LeftOut = 0 endif return END ' ***** End of Program ***** |
![]() |
|
![]() |
![]()
Сообщение
#2
|
|
Технический Маньяк-Гуру ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Технический Маньяк Сообщений: 7049 Регистрация: 3.6.2009 Из: Армения Вне форума Авто: Lancer IX, AT Репутация: ![]() ![]() ![]() |
Цитата включать поворотник, не фиксируя рычаг, а лишь слегка его нажав и т.д.... Все верно, так и есть. Цитата при открытии страницы, появляется "абракадабра" Это не страница - а файл. *.lay файлы открываются программой SprintLayout 5, после открытия файл можно редактировать как угодно, в отличии, например, от разводок выложенных в *.pdf формате. Программу можно даже не инсталлировать, а также запускать прямо с флешки. Вот здесь я выложил - распакуй в любую папку на компе и используй http://ssh1957.narod.ru/soft/SprintLayout5.rar Выложенная мной разводка выполнена в прямом изображении, т.е. так, как она была бы видна на вытравленной плате. Для правильной печатной платы надо (для переноса методом утюга, как описывалось в соотв. топике) распечатать рисунок ЗЕРКАЛЬНО! Эта опция присутствует в окне распечатки самого SprintLayout-a. Все мои платы я разрабатываю в таком стиле. Вообще-то, если схема не содержит микросхем в большинстве случаев абсолютно без разницы прямо или зеркально вытравлена плата. Если же вышла ошибка для платы с микросхемами, то при нежелании делать заново как крайнюю меру могу посоветовать просто аккуратно перегнуть выводы микросхем на 180 град. вверх (т.е. как-бы зазеркалировать саму микросхему). В некоторых же случаях можно монтировать и со стороны проводников, если не используются электролиты, панельки микросхем и т.д. *****Hint***** Первый вывод микросхем всегда расположен в левом нижнем углу, если смотреть на микросхему снизу, т.е. посмотрев на чертеж платы в большинстве случаев можно легко соорентироваться - в прямом или зеркальном отображении она дана. До кучи выкладываю и PicBasic Pro, в котором собственно и компиллируется исходник http://ssh1957.narod.ru/soft/PicBasicPro.rar Ну и сам скомпиллированный файл прошивки, с установленным временем = 3 сек, и срабатыванием аварийки от плюса. ![]() |
![]() |
|
![]()
Сообщение
#3
|
|
Технический Маньяк-Гуру ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Технический Маньяк Сообщений: 2443 Регистрация: 25.12.2009 Из: Уфа - город трех шурупов Вне форума Авто: Subaru XV Репутация: ![]() ![]() ![]() |
Это не страница - а файл. *.lay файлы открываются программой SprintLayout 5... Вот здесь я выложил - распакуй в любую папку на компе и используй http://ssh1957.narod.ru/soft/SprintLayout5.rar Серег, вот ты меня хоть убей, но не понял я, как нужно его открывать. (IMG:style_emoticons/default/ohmy.gif) Программу запускаю, все нормально, а как в ней указать, что открывать? То же самое с твоим файлом в ссылке - нет указаний, чем ее открывать, по умолчанию Опера открывает как страницу сайта и, в результате, белиберда... (IMG:style_emoticons/default/sad.gif) |
![]() |
|
![]() ![]() |
![]() |
+7-978-708-85-73 Дроссель Amadeus Productions. Быстрый заказ по телефону. (Viber, WhatsApp, Telegram) |
Текстовая версия | © 2006-2025 Форум Технических Маньяков. |
|