В общем нужно чтоб при достижении каждой вершины синусоиды выводился сигнал (желательно меандр 5 вольт), и плюс каким-то образом обнаруживался синхроимпульс и сигнал об этом тоже выводился.
Ну с синусоидой всё просто - триггер Шмидтта, а вот как "обнаружить" синхроимпульс... ума не приложу.
Ещё забыл добавить что частота синусоиды может меняться от 500 Гц до 6 000 Гц, а напряжение от 0.5 В до 200 В.
Спасибо за внимание!
Гальваническое сопротивление - это восстание батареек
Подумал и придумал способ. У синхроимпульса частота в 2 раза ниже, чем у основного сигнала. Подключаем через триггер Шмитта и смотрим: если длительность логического 0 больше чем две длительности предыдущего, то значит синхроимпульс (знаю как реализовать на МК, а на жесткой логике - нет, хотелось бы на жесткой логике). Только вот проблема в огромном разбросе напряжение на входе. Существует ли такой триггер Шмитта, который выдержит 200 В? Я вообще не понимаю как решить эту проблему.
И ещё забыл добавить что частота основного сигнала резко измениться не может (имею в виду, что как минимум пройдет 10 вершин синусоиды до какого либо заметного изменения частоты).
Гальваническое сопротивление - это восстание батареек
Потом какой то компаратор нужен.
А вообще посоветовать что то конкретное невозможно когда выкладываю не всю проблему, а какой то оторванный кусок. Поэтому или пишите все, что там у вас или каков вопрос, такой и ответ.
Если честно, то странный какой-то у вас синхроимпульс. То на положительную полярность начинается, то на отрицательную. После второго синхроимпульса излом синусоиды. Вы бы не могли записать на комп/цифровой осциллограф реальный сигнал с несколькими синхроимпульсами и выложить сюда изображение?
Steam писал(а):Ну с синусоидой всё просто - триггер Шмидтта, а вот как "обнаружить" синхроимпульс... ума не приложу.
Правильно, нужен ТШ, но не с привязкой к вершинам синусоиды, а с привязкой к 0..
На выходе ТШ будут импульсы типа меандр, одной частоты, где синусоида и гораздо меньшей, где синхроимпульс..
А по поводу выделения синхроимпульса: думаю, что можно использовать принцип выделения кадровых импульсов из видеосигнала..
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
В общем этот сигнал - это с датчика положения коленчатого вала автомобиля. Устроено все следующим образом: имеется зубчатый шкив, находящийся на оси коленвала (60 зубцов, 2 спилены для формирования синхроимпульса), в 1 мм от него находится тот самый индуктивный датчик. Напряжение на выходе датчика от 0.5 В до 200-250 В (на 6 000 об/мин коленчатого вала). Датчиком формируется сигнал близкий к синусоиде (следовательно частота минимальная от практически 0 и максимальная 6 000 Гц). Синхроимпульс нужен, чтоб узнать когда первый цилиндр находится в верхней мертвой точке.
Собираюсь сделать некий диагностический инструмент - цифровой тахометр + прибор для измерения угла опережения зажигания.
В данный момент на авто нет ни зубчатого шкива, ни датчика (авто карбюраторное возрастом в 30 лет). В ближайшее время буду договариваться с токарем, чтоб приделал зубчатый сектор к родному шкиву авто. Форму сигнала (в первом посте) взял из интернета. Следовательно пока снять осциллограмму не могу.
Исправил форму сигнала в proteus до более правильной:
Гальваническое сопротивление - это восстание батареек
Да, идея с триггером Шмидта мне тоже нравится. После него надо использовать одновибратор, который вырабатывает импульс фиксированной длительности (которая меньше периода синхроимпульса и больше периода обычного сигнала), в случае, если запускающий сигнал на одновибратор приходит очень часто, он просто должен держать на выходе единицу. С одновибратора сигнал подать на D-вход D-триггера, а на вход C подать сигнал со всё того же триггера Шмидта. Тогда на выходе D-триггера в момент начала новой синусоиды (сразу после синхроимпульса) будет логический ноль на период синусоиды. Всё остальное время будет логическая единица.
Steam писал(а):Исправил форму сигнала в proteus до более правильной:
Steam писал(а):фапч это что то очень страшное и сложное?
это генератор с автоподстройкой частоты под сигнал. вот у него на обратной связи при пропадании периода как раз будет резкий скачек на фазовом детекторе. но думаю есть решения куда проще.
я бы лично на микроконтроллере делал, тут как ни крути нужна 'память' и набор статистики в ней по периодичности сигнала, коли его частота гуляет. программно это раз плюнуть, а сооружать аппаратно по-моему сложно будет
B@R5uk писал(а):Да, идея с триггером Шмидта мне тоже нравится. После него надо использовать одновибратор, который вырабатывает импульс фиксированной длительности (которая меньше периода синхроимпульса и больше периода обычного сигнала), в случае, если запускающий сигнал на одновибратор приходит очень часто, он просто должен держать на выходе единицу. С одновибратора сигнал подать на D-вход D-триггера, а на вход C подать сигнал со всё того же триггера Шмидта. Тогда на выходе D-триггера в момент начала новой синусоиды (сразу после синхроимпульса) будет логический ноль на период синусоиды. Всё остальное время будет логическая единица.
вот если использовать одновибратор с подстраиваемой частотой... вот например схема из даташита 555 (missing pulse detector):
а вот теперь надо как-то подстраивать частоту, в зависимости от частоты сигнала... Вот например проинтегрировать сигнал, выровнять, сгладить конденсатором, и подать на затвор полевика, который использовать в качестве подстраиваемого резистора, который задаёт длительность импульсов. Только по-моему всё это будет не точно, надо обратную связь вводить...
Гальваническое сопротивление - это восстание батареек
То, что я писал имеет смысл только для сигнала постоянной частоты, фапч и прочие извращения с мк -- это бессмысленный гемор. Ваша проблема заключается в вашем датчике. Поставьте один зубец в нужное положение и не парьтесь. Это и проще, и надёжнее, и дешевле! Несмотря на то, что эти три параметра -- взаимоисключающие параграфы, в данном случае ВНЕЗАПНО все они выполнены ОДНОВРЕМЕННО! Какие ещё могут быть сомнения по поводу решения проблемы?!
Последний раз редактировалось B@R5uk Ср июл 06, 2011 11:08:16, всего редактировалось 3 раза.