Страница 28 из 34
Zillo
ZEvS писал(а):

А что мешает просто проинвертировать сигнал с трамблера? он как раз сместится в фазе...


нет. тогда получится не 60 градусов, а 120. так как перед искрой катушка заряжается в течение 120 градусов, а потом в течение 60 градусов разряжается.
ZEvS
Что-то я уже начал забывать тему.... хм... Surprised
Zillo
to maximov
В одном из журналов За Рулём тестировали многоискровое зажигание, которое подцеплялось к обычному контактному трамплёру. В журнале было высказано предположение, что из-за снижения токовой нагрузки на контакты, они перестанут самоочищаться. и контакты придётся чистить чаще.
hosemarkus
Zillo писал(а):

из-за снижения токовой нагрузки на контакты, они перестанут самоочищаться. и контакты придётся чистить чаще


для этого достаточно нормировать ток на контактах подтягивающим резистором

несколько лет ездил на контактах + 08-й коммутатор через инвертор
подтягивающий резюк на 100 Ом, закисания контактов ни разу не было отмечено Smile
Zillo
Согласен. Я просто предупредил Very Happy
maximov
Народ, а какую точность в определении и формировании временных интервалов реализуют ваши мозги, т.е. например вы период определяете с точностью +- сколько? можно в машинных циклах
.:LeoN:.
maximov писал(а):

Народ, а какую точность в определении и формировании временных интервалов реализуют ваши мозги, т.е. например вы период определяете с точностью +- сколько? можно в машинных циклах


Камешек работает на 10 MIPSах (резонатор 10МГц + PLLx4), эта же частота используется и в таймерах и в модуле CCP, то есть разрешающая способность 100 наносекунд.
maximov
Я имел в виду не потенциальную точность железа, а точность работы вашего алгоритма. 100 нс точность определения периода и формирования задержек - что-то верится с трудом. Либо встроеная переферия очень богатая. Если есть 3-4 CPP с многоразрядными счетчиками - то да, а на одном 8 разрядном никогда максимальной точности не получишь, обработка прерываний, основные вычисления по любому времянки должны плавать. Или нет?
.:LeoN:.
maximov писал(а):

...а на одном 8 разрядном никогда максимальной точности не получишь, обработка прерываний, основные вычисления по любому времянки должны плавать. Или нет?


Дружище maximov, ты не первый (на этом форуме), кто хочет из "г...а" (PIC16F84) сделать "конфетку" (МПСЗ)... :wink: С одной стороны - очень простой проект, с другой - требует определенных аппаратных ресурсов и программных трюков.
Ну кто или что тебе мешает взять какой-нибудь PIC16F87x, а еще лучше PIC18F252, например.
16-разрядный CCP и пара 16-разрядных таймеров - здесь просто необходимы!!! Естесственно, измерение интервалов и формирование задержек - аппаратно, плюс гибкое использование прерываний и семафоров (флагов событий).
maximov
Отвечу по-порядку, чем я его буду шить 18 пик? Тратить месяц на поиск и собирание программатора... как-то не очень хочется. Для такого г..на как 84, 628 пик есть разведеные под утьжную технологию 100% рабочие платы программаторов. Сто пудово переполз бы на новые мозги, т.к. замумукался ужо, но только, читобы минимум 3 CPP 16 разрядных было бы (лучше 32 конечно Smile) + пару таймер желательно тоже 16 разрядов. Вот только что то я не знаю такого проца. Да желательно, чтобы цена не более 500р была. Может посоветует кто такой проц. 2-3 независимых CPP.
.:LeoN:.
maximov писал(а):

Отвечу по-порядку, чем я его буду шить 18 пик? Тратить месяц на поиск и собирание программатора... как-то не очень хочется. Для такого г..на как 84, 628 пик есть разведеные под утьжную технологию 100% рабочие платы программаторов.


Этим же программатором!!! Только панельку-переходник сделай... А лучше панельку-шнурок на ICSP-разъемчик на конечной плате. Это, как я понимаю, у тебя JDM-программатор для ICSP-шитья (только камешек ты вставляешь непосредственно в сам программатор). Бери WinPic800 и вперед! Только ни в коем случае не ICProg!!! Он не умеет корректно с 18F-серией работать...
Или вот схемка простенького JDM, но работает не со всеми COM-портами.
maximov писал(а):

Сто пудово переполз бы на новые мозги, т.к. замумукался ужо, но только, читобы минимум 3 CPP 16 разрядных было бы (лучше 32 конечно Smile) + пару таймер желательно тоже 16 разрядов. Вот только что то я не знаю такого проца. Да желательно, чтобы цена не более 500р была. Может посоветует кто такой проц. 2-3 независимых CPP.


Ну все тот же PIC18F252!!! И дока хорошая на русском на него есть (правда там пара очепяток есть... :wink: ).
http://www.microchip.ru/lit/pic/pic18fxx2/pic18f252
http://www.microchip.ru/files/d-sheets-rus/PIC18FXX2_manual.pdf
http://www.chipdip.ru/search.aspx?searchtext=pic18f2
Zillo
не хочу никого агитировать, но AVR по-дешевле будет, даже чем PIC16F84. и скорости в нём хоть отбавляй...
maximov
При одном изделии цена не главное, у него два 16 разрядных модуля захвата-сравнения есть? Если да пиши конкретную модель и желательно ссылку на русскую доку + цены.
ZEvS
maximov писал(а):

При одном изделии цена не главное, у него два 16 разрядных модуля захвата-сравнения есть? Если да пиши конкретную модель и желательно ссылку на русскую доку + цены.



ATmega8535 - в нем все есть, и захват сравнение и прочее.
Zillo
на русском - не знаю, а вот официальный даташит здесь:
http://www.atmel.com/dyn/resources/prod_documents/doc2502.pdf
цена на chipinfo.ru - около 70р.

на русском я только доку по atmega128 видел. теоретически всё тоже самое, только всего больше Wink
maximov
ATmega8535:

Peripheral Features
? Two 8-bit Timer/Counters with Separate Prescalers and Compare Modes
? One 16-bit Timer/Counter with Separate Prescaler, Compare Mode, and Capture
Mode
? Real Time Counter with Separate Oscillator
? Four PWM Channels

Не это чуть лучше PIC16F628 - One 16-bit !!! даже затеваться не стоит.

Надо минимум два CPP по 16 бит. Один на захват, второй на сравнение. Иначе возникают сложности реализации. А PIC18F252 - 250р.в наличии пока нет, но обещали подвезти...
Zillo
Ну тогда другой вариант.
atmega162
там 2 16битных таймера. стоит 115р в том же чипинфо
хотя честно говоря не понимаю зачем два таймера? я как-то одним обошёлся... хоть в меге128 их тоже два имеется.
maximov
"зачем два таймера? я как-то одним обошёлся... " - а вот с этого момента поподробнее можно? Как тебе удается с высокой точностью определять период, отсчитывать задержку и проводить расчеты еще в это время с помощью одного таймера. Такое возможно, но точности не будет +- километр...[/list]
maximov
Да, еще один моментик, уважаемые, вы как-либо длительность импульса зажигания регламентируете - или все это возлагается на коммутатор? Т.е. сигнал искры дали, а снимаете его когда?
Zillo
по длительности импульса:
время разрядки катушки выбирается равной 1/3 полуоборота коленвала (мы же знаем время прошлого полуоборота. вот примерно и прикидываем)
(в схеме с ДПКВ время разряда = 10 зубьев)

по таймеру:
с приходом каждого импульса запоминаем "сколько натикало" и сбрасываем таймер в ноль. Пусть он тикает дальше. если у нас трамплёр выставлен в НОЛЬ градусов то у нас ещё есть куча времени чтобы произвести рассчёты и взвести "будильник" на таймере (времени примерно 120 градусов).

В случае с ДПКВ немного по-другому.

уточню конфигурацию. мой девайс работает на частоте 8 МГц, в отличии от PIC, в AVR это примерно равно 8 миллионов элементарных операций в сек. так что всё успевает. но если вдруг станет мало мы можем запросто поднять частоту в два раза (поставить кварц на 16 МГц)
.:LeoN:.
maximov писал(а):

Надо минимум два CPP по 16 бит. Один на захват, второй на сравнение. Иначе возникают сложности реализации.


Я обошелся одним CCP и двумя таймерами (один на CCP-захват, другой на программное "а-ля сравнение", точнее переполнение, и он же - watchdog для катушки зажигания).
Zillo писал(а):

(в схеме с ДПКВ время разряда = 10 зубьев)


Wink Bravo Bravo Bravo :cool:
И еще вопросик:
Zillo писал(а):

(мы же знаем время прошлого полуоборота.


Для чего это измеряется? :wink:
Zillo
.:LeoN:. писал(а):

Zillo писал(а):

(мы же знаем время прошлого полуоборота.


Для чего это измеряется? :wink:


э-э-э. я имел в виду систему без ДПКВ. мы там измеряем время полуоборота какминимум. потому мы его и знаем Wink. или щас опять пойдут споры - что правильнее измерять - полоборота или оборот? Very Happy
.:LeoN:.
Zillo писал(а):

или щас опять пойдут споры - что правильнее измерять - полоборота или оборот? Very Happy


Именно поэтому и спросил...
Неужели для ВАС не очевидно, что (один) цикл измерения должен быть равен одному циклу управления (для 4-горшкового 4-тактного - полуоборот, для Оки - оборот), а не двум, трем, десяти циклам, двум секундам, одной-какой-то части цикла (8 зубов например) и т.д.???
В каждом цикле управления нужна информация о последнем полуобороте. Предпоследний полуоборот (или предпоследний + последний) уже не актуален...

Последний раз редактировалось: .:LeoN:. (01 Августа 2007 13:40), всего редактировалось 3 раз(а)
Zillo
.:LeoN:. писал(а):

Zillo писал(а):

или щас опять пойдут споры - что правильнее измерять - полоборота или оборот? Very Happy


Именно поэтому и спросил...
Неужели для Вас не очевидно, что (один) цикл измерения должен быть равен одному циклу управления (для 4-горшкового 4-тактного - полуоборот, для Оки - оборот), а не двум, трем, десяти циклам, двум секундам, одной-какой-то части цикла (8 зубов например) и т.д.???
В каждом цикле управления нужна информация о последнем полуобороте. Предпоследний полуоборот уже не актуален...


это наезд по поводу 10 зубов? или где?
.:LeoN:.
Zillo писал(а):

это наезд по поводу 10 зубов? или где?


Если ты о:
Zillo писал(а):

(в схеме с ДПКВ время разряда = 10 зубьев)


то здесь как раз таки все идеально. Отключка коммутатора просто по зубам (ничего не замеряя). Здесь все грамотно и красиво :wink: .
А если речь идет о замере частоты вращения по 10 (8 или сколько угодно зубам, кроме 30), то смотреть на два поста выше...
Новая тема Ответить на тему
Показать сообщения:
Страница 28 из 34
Перейти:
ИНФОРМАЦИЯ ПО ИКОНКАМ И ВОЗМОЖНОСТЯМ

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы можете вкладывать файлы
Вы можете скачивать файлы