roboforum.ru

Технический форум по робототехнике.

Модуль OR-BWSENS: Датчик цвета поверхности (черная/белая)

Разработка стандартизированных модулей для домашнего робостроения.
Правила форума
Правила раздела OpenRobotics

Re: Модуль OR-BWSENS: Датчик цвета поверхности (черная/белая)

Сообщение =DeaD= » 21 сен 2009, 12:46

Хм, скачать что ли BASCOM, откатать самому в нём... раз такие грабли... вроде с датчиком линии у меня всё ок работает, аж рекорды ставит, а тут всё то же самое по схеме. А какой именно BASCOM надо? У него демо-версия есть, чтобы не ломать?
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Модуль OR-BWSENS: Датчик цвета поверхности (черная/белая)

Сообщение SkyStorm » 21 сен 2009, 13:14

Демо BASCOM самый нижний файл Ограничения то ли 4 то ли 6 кб кода. Пока не достиг )))
Никто кроме нас!!!
4Robots.ru - Все для роботов!
Аватара пользователя
SkyStorm
 
Сообщения: 2687
Зарегистрирован: 05 фев 2008, 15:33
Откуда: St. Petersburg - Moscow
Skype: SkyStorm77
ФИО: Костюк Константин Вячеславович

Re: Модуль OR-BWSENS: Датчик цвета поверхности (черная/белая)

Сообщение galex1981 » 21 сен 2009, 17:10

Ограничения у демо BasCom 4 Кб кода
if(!Operate) Read(pDatasheet);
Аватара пользователя
galex1981
 
Сообщения: 4363
Зарегистрирован: 04 дек 2008, 22:44
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович

Re: Модуль OR-BWSENS: Датчик цвета поверхности (черная/белая)

Сообщение =DeaD= » 21 сен 2009, 23:29

Вот тестовая программка на gcc для проверки BW-SENS на порту А0, мигает светиком РС5 (который ближе к порту А) на OR-AVR-M32-D, тестировал на 10мм от поверхности:

Код: Выделить всёРазвернуть
#include "defines.h"
#include <avr/interrupt.h>
#include <util/delay.h>

int main(void)
{
  DDRC=0x20;
  while(1==1){
    DDRA=0xFF;
   PORTA=0xFF;
   _delay_us(2500);
   DDRA=0x00;
   PORTA=0x00;
   _delay_us(2500);
   int x=PINA;
   if(x & 0x01 == 0x01){
      PORTC=0x20;
   }else{
      PORTC=0x00;
   };
   _delay_us(1000);
  };
}


Добавлено спустя 23 секунды:
Ща попробую в BASCOM перетащить.

Добавлено спустя 30 минут 51 секунду:
2SkyStorm:

Вот, освоил BASCOM, тут два светика сразу будет зажигать\гасить.

Пробуй, пиши чего получилось!
Код: Выделить всёРазвернуть
$regfile = "m32def.dat"
$crystal = 7372800

Config Portc = Output
Config Portb = Output

Dim A As Byte

A = 1

While A > 0
   Config Porta = Output
   Set Porta.0
   Waitms 3
   Config Porta = Input
   Reset Porta.0
   Waitms 3
   If Pina.0 = 1 Then
      Set Portc.5
      Set Portb.3
   Else
      Reset Portc.5
      Reset Portb.3
   End If

Wend

End
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Модуль OR-BWSENS: Датчик цвета поверхности (черная/белая)

Сообщение =DeaD= » 22 сен 2009, 14:51

2SkyStorm: Ну как, не попробовал пока?
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Модуль OR-BWSENS: Датчик цвета поверхности (черная/белая)

Сообщение SkyStorm » 22 сен 2009, 14:57

Нет тока вечером. На работе никак (((
Никто кроме нас!!!
4Robots.ru - Все для роботов!
Аватара пользователя
SkyStorm
 
Сообщения: 2687
Зарегистрирован: 05 фев 2008, 15:33
Откуда: St. Petersburg - Moscow
Skype: SkyStorm77
ФИО: Костюк Константин Вячеславович

Re: Модуль OR-BWSENS: Датчик цвета поверхности (черная/белая)

Сообщение =DeaD= » 23 сен 2009, 09:34

Еще не получилось проверить? Я же беспокоюсь :wink:
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Модуль OR-BWSENS: Датчик цвета поверхности (черная/белая)

Сообщение SkyStorm » 23 сен 2009, 10:15

Вчера вечером добрался до дома часов в 12.
Слегка глючил, но проверил.
Сеачала у меня случились непонятки диоды загараются но не зависимо от того на какой поверхности стоим... долго не мог понять в чем дело ))) на PA.0 был подкоючен Sharp ))) Подношу руку переставить на черное загарается убираю гаснет ... и так пол часа )))

Потом подключил BWSENS на PA.0 и тишина ни цвет поверхности, ни растояние до нее. Диоды не загораются и все. Расстроился и лег спать.
С утра на свежую голову пока ехал на работу подумал, что нужно было еще временем поиграться ... но это уже сегодня ... хотелось бы к суботе оживить.
Типа соревнования будут.
Никто кроме нас!!!
4Robots.ru - Все для роботов!
Аватара пользователя
SkyStorm
 
Сообщения: 2687
Зарегистрирован: 05 фев 2008, 15:33
Откуда: St. Petersburg - Moscow
Skype: SkyStorm77
ФИО: Костюк Константин Вячеславович

Re: Модуль OR-BWSENS: Датчик цвета поверхности (черная/белая)

Сообщение =DeaD= » 23 сен 2009, 10:18

А ты на чем тестировал? Оно же не цвет поверхности реально проверяет, а отражение ИК. Попробуй черную полосу на принтере напечатать тонером без режима эконом. А то может оно у тебя в ик-спектре отражает нормально черное то :).

Кстати, я вот подумал - а вообще оно как должно проверяться? На каких поверхностях надо испытывать? Черную изоленту наклеить чтоли на бумагу?
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Модуль OR-BWSENS: Датчик цвета поверхности (черная/белая)

Сообщение SkyStorm » 23 сен 2009, 11:43

Сегодня вечером планирую напечатать ринг для кегельринга.
На нем еще разок проверю.
Можно и изаленту, черная у меня есть )))
Никто кроме нас!!!
4Robots.ru - Все для роботов!
Аватара пользователя
SkyStorm
 
Сообщения: 2687
Зарегистрирован: 05 фев 2008, 15:33
Откуда: St. Petersburg - Moscow
Skype: SkyStorm77
ФИО: Костюк Константин Вячеславович

Re: Модуль OR-BWSENS: Датчик цвета поверхности (черная/белая)

Сообщение =DeaD= » 23 сен 2009, 11:44

А ты на чем проверял цвет поверхности? :) или это у тебя специфичное, мне такое не найти? :)
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Модуль OR-BWSENS: Датчик цвета поверхности (черная/белая)

Сообщение SkyStorm » 23 сен 2009, 11:46

Ченое пластик ноутбука, белое лист бумаги.
Никто кроме нас!!!
4Robots.ru - Все для роботов!
Аватара пользователя
SkyStorm
 
Сообщения: 2687
Зарегистрирован: 05 фев 2008, 15:33
Откуда: St. Petersburg - Moscow
Skype: SkyStorm77
ФИО: Костюк Константин Вячеславович

Re: Модуль OR-BWSENS: Датчик цвета поверхности (черная/белая)

Сообщение =DeaD= » 23 сен 2009, 11:49

Пластик ноута может замечательно отражать ИК теоретически...
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Модуль OR-BWSENS: Датчик цвета поверхности (черная/белая)

Сообщение danger » 16 окт 2009, 07:49

OR-BWSENS: Датчик цвета поверхности как им пользоватся если у него 3 штекера или можно просто как фд,фт плюс минус подсоединить и работать будет?
danger
 
Сообщения: 74
Зарегистрирован: 16 авг 2009, 10:55
Откуда: Cheboksary
Предупреждения: -1

Re: Модуль OR-BWSENS: Датчик цвета поверхности (черная/белая)

Сообщение =DeaD= » 16 окт 2009, 08:41

Датчик цвета ёмкостный - что позволяет регулировать чувствительность датчика не используя АЦП.

Принцип работы датчика:

1. Замыкаем на 2.5мс (2500мкс) сигнальную линию датчика на землю, разряжая конденсатор;
2. Делаем сигнальную линию входом для МК (т.е. перестаём её подтягивать к земле или к питанию) и ждём сколько-то времени, пока через открытый, в зависимости от отражающей способности поверхности в спектре ИК-излучения и расстояния до поверхности, оптодатчик зарядится конденсатор;
3. Замеряем что на выходе с датчика - 0 или 1.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Пред.След.

Вернуться в Open Robotics

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

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