Технический форум по робототехнике.
Michael_K » 24 мар 2010, 01:08
Там - это в типичных роботовcких приложениях.
Здесь проблема в слове "простаивать"...
Если проц простаивает, то, конечно, никакого пентиума не хватит, не то что двух мег
В юмор:
"Японские ученые создали суперкомпьютер способный выполнить бесконечный цикл за три микросекунды!"
Последний раз редактировалось
Michael_K 24 мар 2010, 03:12, всего редактировалось 1 раз.
ALHIMIK » 24 мар 2010, 01:28
2паштет а чего там опрашивать?
выставить флажок (в прерывании по таймеру) - опроси датчики
в бесконечном цикле проверяй флажжки
=DeaD= » 24 мар 2010, 08:22
+1
Используй прерывания по таймеру и всё.
pashteet » 24 мар 2010, 09:43
а если все таймеры заняты? Я еще не научился на один таймер и сервы и датчики, а еще Rc5 нужен таймер, а если импульсы захотим посчитать...
Мысль то я уловил, но все же, было бы удобнее, если с датчика приходит сразу 1 или 0 (особенно для начинающих
)
Кстати, у меня получилось так, если опрашивать по одному датчику, то все работает:
- Код: Выделить всё • Развернуть
Левый верхний:
Config Portd.4 = Output : Set Portd.4 : Waitms 3
Config Portd.4 = Input : Reset Portd.4 : Waitms 3
If Pind.4 = 1 Then : Lv = 0 : Else : Lv = 1 : End If
Return
Левый нижний:
Config Portd.6 = Output : Set Portd.6 : Waitms 3
Config Portd.6 = Input : Reset Portd.6 : Waitms 3
If Pind.6 = 1 Then : Ln = 0 : Else : Ln = 1 : End If
Return
Правый верхний:
Config Portd.5 = Output : Set Portd.5 : Waitms 3
Config Portd.5 = Input : Reset Portd.5 : Waitms 3
If Pind.5 = 1 Then : Pv = 0 : Else : Pv = 1 : End If
Return
Правый нижний:
Config Portd.7 = Output : Set Portd.7 : Waitms 3
Config Portd.7 = Input : Reset Portd.7 : Waitms 3
If Pind.7 = 1 Then : Pn = 0 : Else : Pn = 1 : End If
Return
а, если сделать так:
- Код: Выделить всё • Развернуть
Config Portd.4 = Output : Set Portd.4
Config Portd.6 = Output : Set Portd.6
Config Portd.5 = Output : Set Portd.5
Config Portd.7 = Output : Set Portd.7
Waitms 3
Config Portd.4 = Input : Reset Portd.4
Config Portd.6 = Input : Reset Portd.6
Config Portd.5 = Input : Reset Portd.5
Config Portd.7 = Input : Reset Portd.7
Waitms 3
If Pind.4 = 1 Then : Lv = 0 : Else : Lv = 1 : End If
If Pind.6 = 1 Then : Ln = 0 : Else : Ln = 1 : End If
If Pind.5 = 1 Then : Pv = 0 : Else : Pv = 1 : End If
If Pind.7 = 1 Then : Pn = 0 : Else : Pn = 1 : End If
то нифига не работает, бился с этим целый день, потом забил.
Итого, на опрос всех датчиков (у меня), уходило 6*4=24мс, довольно большое время
П.С.
ALHIMIK писал(а):2паштет а чего там опрашивать?
выставить флажок (в прерывании по таймеру) - опроси датчики
в бесконечном цикле проверяй флажжки
=DeaD= писал(а):+1
Используй прерывания по таймеру и всё.
буду учится на своих ошибках
=DeaD= » 24 мар 2010, 09:50
Если с датчика будет приходить 0 или 1, то его нельзя будет калибровать под разную высоту над поверхностью и разный уровень освещенности \ материал трассы.
pashteet » 24 мар 2010, 09:54
ааааа, ёёё, ты прикалываешся?
а если будет стоять МК на датчике, то тоже нельзя будет? Или МК не сможет выдавать 1 или 0 в порт?
=DeaD= » 24 мар 2010, 09:56
Ааа... ты про МК на борту - это да, сделаем в следующей реинкарнации, заодно посадим на i2c шину, чтобы порты освободить.
pashteet » 24 мар 2010, 09:59
Воот! А мк будет только на линейке из 8 датчиков? Или линейку можно будет разбивать на 8 отдельных датчиков и 1 МК, который будет подключаться по И2С?
=DeaD= » 24 мар 2010, 10:38
Только на линейке. Попытка сделать это чудо "разделяемым" тут же увеличит размеры датчика в разы.
=DeaD= » 06 май 2010, 00:21
Версия датчика линии на i2c:
- Вложения
-
- OR-LINESENS-KTIRx10-I2C-sch.pdf
- (29.62 КиБ) Скачиваний: 0
-
- OR-LINESENS-KTIRx10-I2C-brd.pdf
- (30.1 КиБ) Скачиваний: 0
-
- OR-LINESENS-KTIRx10-I2C.zip
- (41.93 КиБ) Скачиваний: 0
Zeus » 23 июн 2010, 10:42
Сейчас смотрел даташит на KTIR0721DS.
Там пишут, что напряжение на светодиоде должно быть не более 1,5В. Это так?
Тогда резистор в цепи служит не только как токоограничивающий, но и как делитель напряжения, который из 5В делает меньше. Это так?
=DeaD= » 23 июн 2010, 10:56
Что-то я не понял, чем светодиод в этом КТИР отличается от любого другого светодиода?
Zeus » 23 июн 2010, 11:06
я просто сейчас пытаюсь спаять схему, у меня только 250 Ом резисторы есть, а за другими ехать нада - вот и думаю спалю или нет от 5В
Какое сопротивление у ентого светодиода?
=DeaD= » 23 июн 2010, 11:18
Светодиод как бы не имеет такого понятия, как сопротивление
На диоде обычно падает 1.2В вроде, а ток выбирается резистором поэтому если питать скажем 3.3В и током 0.01 А, то надо резистор R=U/I=(3.3-1.2)/0.01=2.1/0.01=210 Ом.
blindman » 23 июн 2010, 11:23
У светодиода, как и у любого диода, есть вольт-амперная характеристика - она должна быть в документации. Расчет токоограничительного резистора производят для желаемой силы тока If. По ВАХ находят напряжение на диоде при заданном токе - Uf. Если напряжение питания U, то сопротивление резистора R = (U-Uf)/If