Технический форум по робототехнике.
zaman » 26 ноя 2009, 17:42
Непонятен момент
- Код: Выделить всё • Развернуть
pinMode(pinB, INPUT);
digitalWrite(pinB,LOW);
Это как? Конфижим пин как вход и пишем в вход значение лог.0?
Я так понял что АЦП не задействовано и вообще нафик надо, а val увеличиваем пока напряжение не достигнет уровня лог.0, так как ток со светодиода идет только в том случае когда светодиод освещен. верно?
hudbrog » 26 ноя 2009, 19:45
Читаем доки по ардуине, я ж специально написал - надо отключать пуллап резисторы, оно и делается:
If the pin is configured as an INPUT, writing a HIGH value with digitalWrite will enable an internal 20K pullup resistor (see the tutorial on digital pins). Writing LOW will disable the pullup.
А в остальном да, так.
avr123.nm.ru » 26 ноя 2009, 20:26
20 кОм это врядли, боле реально 40 кОм
shadowjack » 29 ноя 2009, 18:57
По умолчанию pullup-ы вроде отключены.
Angel71 » 29 ноя 2009, 20:28
1) код на второй странице внимательней смотрим
2) вникаем в "If the pin is configured as an INPUT, writing a HIGH value with digitalWrite will enable an internal 20K pullup resistor (see the tutorial on digital pins). Writing LOW will disable the pullup."
3) если непонятно, то читаем заново пункт 1 и 2
SkyStorm » 30 ноя 2009, 12:38
Алексей, а у тебя какая версия среды стоит 17я???
Я просто хотел спросить про подключение библиотек. Мне не очень понятно куда их складывать.
В 17ой вроде как все пути поменялись.
blindman » 30 ноя 2009, 12:41
=DeaD= писал(а):А то что там AVR внутри - так это я знаю, может быть наш шлюз-контроллер когда-нибудь будет популярен на ардуино

Надо наверно заняться этим вопросом

Добавить ещё одну платформу в ORFA

hudbrog » 30 ноя 2009, 13:25
SkyStorm писал(а):Алексей, а у тебя какая версия среды стоит 17я???
Я просто хотел спросить про подключение библиотек. Мне не очень понятно куда их складывать.
В 17ой вроде как все пути поменялись.
На тот момент 16ая стояла, 17ую не трогал пока. А какие библиотеки ты хочешь добавить?
SkyStorm » 30 ноя 2009, 13:34
Хочу к Ардуино подключить
[[OR-BWSENS]] используя библиотеки Pololu.
SkyStorm » 11 янв 2010, 15:34
Уважаемый hudbrog (Май 17th, 2009, 10:10 pm) Уже подключал Датчик линии к аналоговому входу.Подключение аналога Pololu QTR-1RC от OR
[[OR-BWSENS]] используя ту же библиотеку Pololu.

- схема
- QTR-1RC-Sch.png (6.6 КиБ) Просмотров: 6354
Использует Цифровой Pin Arduino, библиотека возвращает результат измерений от 0(самый белый) до 1000(самый черный).
- Код: Выделить всё • Развернуть
#include <PololuQTRSensors.h>
#define LED 13 // LED на pin 13
// создаем объект, датчик подключен на pin 10
PololuQTRSensorsRC qtr((unsigned char[]) {10}, 1);
void setup()
{
pinMode(LED, OUTPUT); //установка LED pin как выход
digitalWrite(LED, HIGH); // LED on
// калибровка датчика
int i;
for (i = 0; i < 250; i++)
{
qtr.calibrate();
delay(20);
}
digitalWrite(LED, LOW); // LED off
Serial.begin(9600);
}
void loop()
{
digitalWrite(LED, LOW); // LED Off
unsigned int sensors[1]; // результаты измерений сенсора
int position = qtr.readLine(sensors);
Serial.println(sensors[0], DEC); //результат измерений 0(самый белый) .. 1000(самый черный)
if (sensors[0] > 500) // скорее черный чем белый
{
digitalWrite(LED, HIGH); // turns the LED on
}
delay(10); // waits for a 10 uSec
}
SkyStorm » 12 янв 2010, 15:24
Подключение TSOP к Arduino. Про TSOPы очень хорошо написал Yak-40 в теме
"Поиск базы на ИК-светодиодах+TSOP(теория и практика)".
Берем от туда схему:

- схема
- cx_pri.jpg (28.63 КиБ) Просмотров: 6298
Не забываем, что импульсы с ТСОП-ов идут в инверсном виде, то есть, активный сигнал - 0!
- Код: Выделить всё • Развернуть
#define LED 13 // LED подключаем к pin 13
#define RC 12 // Выход с TSOP на pin 12
int RC_State = 0;
void setup()
{
pinMode(LED, OUTPUT); // sets the digital pin as output
pinMode(RC, INPUT); // sets the digital pin as output
}
void loop()
{
digitalWrite(LED, LOW); // LED Off
RC_State = digitalRead(RC); // читаем состояние
if (RC_State == LOW) // если лог. ноль то зажигаем LED
{
digitalWrite(LED, HIGH); // LED on
delay(100); // waits for a 100 uSec
}
}
Теперь берем пульт ДУ и проверяем, при нажатии кнопки на пульте загорается LED.
PS: если у нас 3х вольтовый Arduino есть 2 варианта
1. Применить не 5ти а 3х вольтовый TSOP
TSOP18SS3V2. Сделать согласование уровней
Англоязычная статья

- самый простой вариант из статьи.