roboforum.ru

Технический форум по робототехнике.
Текущее время: 02 май 2025, 02:58

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 43 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Про меандр
СообщениеДобавлено: 18 мар 2010, 17:32 
Не в сети
Аватара пользователя

Зарегистрирован: 06 июл 2006, 20:42
Сообщения: 650
Откуда: Москва
прог. языки: C/C++, Python
Прошу вашей помощи.
На вход МК должен подаваться сигнал - либо это будет постоянное напряжение, либо меандр. Если сигнал есть, то МК должен выполнять команду. Но как это сделать в случае, если на вход подаётся меандр? Можно ли его как-то выпрямить?

_________________
[[Использование библиотеки OpenCV]]
Я в LiveJournal


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 18 мар 2010, 17:45 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Частота какая меандра?

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 18 мар 2010, 17:45 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Вообще RC-фильтры вроде еще не запрещены законом... :wink:

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 18 мар 2010, 17:47 
Не в сети
Аватара пользователя

Зарегистрирован: 19 янв 2010, 14:51
Сообщения: 979
Откуда: Петрозаводск
прог. языки: C, FBD, Wiring-Processimg,,,LD, SFC, ST...
ФИО: Вадим
"Выпрямить", можно в самом МК, введя допустимую задержку на анализ перехода выхода из 1 в 0 - входной сигнал считать присутствующим на входе, пока после перехода не прошло время равное длительности периода например...вариантов много... ну и естественно можно ввести аппаратный фильтр по входу...

_________________
Роботы, уже среди нас...
Прошу прощения за аватар, никак схему динамической индикации не могу настроить :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 18 мар 2010, 18:49 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Lockdog писал(а):
меандр. Можно ли его как-то выпрямить?


Надо вход Цп зашунтировать конденсатором на землю, а меандр подавать на этот вход АЦП через резистор. Произведение R на C должно быть раз в 10 и более больше максимального периода меандра.

Только меандр это когда "1" и "0" равное время присутствуют. Т.е.

меандр это частный случай прямоугольного сигнала.

_________________
Читайте !


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 25 мар 2010, 02:11 
Не в сети
Аватара пользователя

Зарегистрирован: 06 июл 2006, 20:42
Сообщения: 650
Откуда: Москва
прог. языки: C/C++, Python
В общем, нашёл решение, как "выпрямить" меандр с помощью логических вентилей.
Нужно один и тот же сигнал подать на два входа "ИЛИ", но один из них ещё и пропустить через инвертор.


Вложения:
1.jpg
1.jpg [ 95.29 КиБ | Просмотров: 2358 ]

_________________
[[Использование библиотеки OpenCV]]
Я в LiveJournal
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 25 мар 2010, 08:40 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Студентам надо показать - чтобы запомнили как ...

_________________
Читайте !


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 25 мар 2010, 13:00 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Цитата:
два входа "ИЛИ", но один из них ещё и пропустить через инвертор.

Эмм. А почему просто выход на единицу не коротнуть :)
(0 или 1) точно так же как и (1 или 0) ВСЕГДА дадут единицу...
Меандр там, не меандр, оторванный вход или заземленный - всегда.
Смысл-то в этой схеме какой?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 25 мар 2010, 13:01 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
avr123.nm.ru писал(а):
Студентам надо показать - чтобы запомнили как ...

Тоже весело.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 25 мар 2010, 13:22 
Не в сети
Аватара пользователя

Зарегистрирован: 06 июл 2006, 20:42
Сообщения: 650
Откуда: Москва
прог. языки: C/C++, Python
Michael_K писал(а):
Цитата:
два входа "ИЛИ", но один из них ещё и пропустить через инвертор.

Эмм. А почему просто выход на единицу не коротнуть :)
(0 или 1) точно так же как и (1 или 0) ВСЕГДА дадут единицу...
Меандр там, не меандр, оторванный вход или заземленный - всегда.
Смысл-то в этой схеме какой?

Я всегда иду окольными путями)))

_________________
[[Использование библиотеки OpenCV]]
Я в LiveJournal


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 25 мар 2010, 14:38 
Не в сети

Зарегистрирован: 24 ноя 2008, 19:43
Сообщения: 1054
Откуда: Казань
вообще-то в схемке смысл есть- так как это формирователь коротких импульсов из длинных по фронту))чем больше последовательных инверторов) тем выше задержка до появления импульса и/или его длительность, время срабатывания одного инвертора умноженое на количество их,и плюс время задержки выходного элементе= ширина импульса, это вроде основы схемотехники... хотя мог и приврать где-то ,но вряд ли :wink:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 10 май 2010, 00:01 
Не в сети
Аватара пользователя

Зарегистрирован: 06 июл 2006, 20:42
Сообщения: 650
Откуда: Москва
прог. языки: C/C++, Python
Вот написал такой код для обработки меандра с периодом 0,5 с.
Код:
#include <mega8.h>

// Timer 1 output compare A interrupt service routine
interrupt [TIM1_COMPA] void timer1_compa_isr(void)
{
   PORTD.0 = 1;
 
  if (PINC.0 == 0)
  {
   PORTD.0 = 0;
  }
}

// Declare your global variables here

void main(void)
{
DDRC=0x00;
DDRD=0xFF;
PORTC=0x00;
PORTD.0=0;

TCCR1A=0x00;
TCCR1B=0x0D;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x0F;
OCR1AL=0x92;
OCR1BH=0x00;
OCR1BL=0x00;

TIMSK=0x10;

#asm("sei")
while (1)
      {
      };
}


Предделитель 1024 с
Режим СТС, прерывание при совпадение с OCR1A

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

_________________
[[Использование библиотеки OpenCV]]
Я в LiveJournal


Последний раз редактировалось Vooon 10 май 2010, 16:34, всего редактировалось 1 раз.
[code=cpp]!!!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 11 май 2010, 14:17 
Не в сети
Аватара пользователя

Зарегистрирован: 06 июл 2006, 20:42
Сообщения: 650
Откуда: Москва
прог. языки: C/C++, Python
Никто не сможет помочь? :sorry:

_________________
[[Использование библиотеки OpenCV]]
Я в LiveJournal


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 11 май 2010, 17:18 
Не в сети
Аватара пользователя

Зарегистрирован: 03 авг 2007, 19:43
Сообщения: 1437
Откуда: Екатеринбург
прог. языки: Си, асм со словарем
Вложение:
cv.PNG
cv.PNG [ 42.45 КиБ | Просмотров: 2144 ]

кодевижен помоги!

а чем стандартные помощники не устравают?? Аппаратный шим к примеру в меге есть :P


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 11 май 2010, 17:28 
Не в сети
Аватара пользователя

Зарегистрирован: 06 июл 2006, 20:42
Сообщения: 650
Откуда: Москва
прог. языки: C/C++, Python
Дык я в кодвижне и писал, зачем мне шим? Я хочу чтобы таймер через каждые 0,5 сек вызывал прерывание и в нём проверял состояние ножки и если оно = 1, то выполнять какю-либо команду

_________________
[[Использование библиотеки OpenCV]]
Я в LiveJournal


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 43 ]  На страницу 1, 2, 3  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


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

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO