Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам > CyberWrt

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 01.12.2016, 21:08   #1
vova606
Member
 
Регистрация: 14.04.2015
Сообщений: 45
Вес репутации: 0
vova606 is an unknown quantity at this point
По умолчанию Re: Модуль "CyberBot-3"

Уважаемый администратор, хотел уточнить планируется ли обновление cyberbot-3 либо какие планы по разработке? Заранее спасибо за ответ
vova606 вне форума   Ответить с цитированием
Старый 01.12.2016, 21:50   #2
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,616
Вес репутации: 9821
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Модуль "CyberBot-3"

В планах добавить кнопку "Авто"-это автоматический режим движения по УЗД сенсору
Еще можно добавить голосовое озвучка текстов, отправленных со стороны управления
Что то вроде обратной связи.

P.S.
У меня пока нет идей, что бы что то особенное добавить
Admin вне форума   Ответить с цитированием
Старый 28.02.2017, 16:48   #3
anatoliylagutenko
Member
 
Регистрация: 12.01.2016
Адрес: Кривой Рог
Сообщений: 36
Вес репутации: 0
anatoliylagutenko is an unknown quantity at this point
Cool Re: Модуль "CyberBot-3"

Цитата:
Сообщение от Admin Посмотреть сообщение
В планах добавить кнопку "Авто"-это автоматический режим движения по УЗД сенсору
Еще можно добавить голосовое озвучка текстов, отправленных со стороны управления
Что то вроде обратной связи.

P.S.
У меня пока нет идей, что бы что то особенное добавить
Я на меге на гуляющиий rx tx повесил плеер с записанными голосовыми фрагментами. В скетче прописал все возможные варианты воспроизведения команд. Добавил голосовое распознавание. Которое так же управляет воспроизведением фрагментов звука. И на ругательное слово "Эй железяка", отвечает как его зовут на самом деле. И остальные команды распознавателя так же что делают. Скажем так, минимальный диалог можно продумать.
anatoliylagutenko вне форума   Ответить с цитированием
Старый 03.04.2017, 09:41   #4
djam700
Junior Member
 
Регистрация: 01.04.2016
Сообщений: 2
Вес репутации: 0
djam700 is an unknown quantity at this point
По умолчанию

#include <CyberLib.h>
#include <Servo.h>
#include <AFMotor.h> // Подключаем библиотеку для управления двигателями

AF_DCMotor motor1(1); //создаем мотор №1
AF_DCMotor motor2(2); //создаем мотор №2
AF_DCMotor motor3(3); //создаем мотор №1
AF_DCMotor motor4(4); //создаем мотор №2
Servo myservo1;
Servo myservo2;
#define step_servo 10 //минимальный угол поворота ссервы за один клик
uint8_t min_pos=10, max_pos=170; //минимальное и максимаьное положение сервы
int i=130, i2=90; //начальное положение сервы

boolean light_stat; //состояние фар
uint8_t inByte, packid;
uint8_t speed=255; //максимальная скорость моторов по умолчанию

#define init {D3_Out; D4_Out; D5_Out; D6_Out; D7_Out; D9_Out; D10_Out; D11_Out;} //используемые порты

void setup()
{
Serial.begin(57600); //включаем передачу данных на скорости 9600 бит/c
motor1.setSpeed(255); //Скорость движка №1
motor2.setSpeed(255); //Скорость движка №2
motor3.setSpeed(255); //Скорость движка №1
motor4.setSpeed(255); //Скорость движка №2
myservo1.attach(9); // Подключение сервоприводов к порту
myservo2.attach(10); // Подключение сервоприводов к порту
myservo2.write(i2); // начальное положение сервы(горизот) при включении
myservo1.write(i); // начальное положение сервы(вертикаль) при включении
init; // Инициализация портов
D11_Low; // Динамик OFF
randomSeed(A5_Read); //Получить случайное значение
horn(); //звуковое оповещение готовности робота
UART_Init(57600); // Инициализация порта для связи с роутером
//wdt_enable (WDTO_500MS);
}

void loop()
{
if (UART_ReadByte(inByte))
{
if ( packid == 16 ) // контрольная сумма команды cm=
{
packid=0;
switch (inByte) // Смотрим какая команда пришла
{
case 'x': // Остановка робота
robot_stop();
break;

case 'W': // Движение вперед
robot_go();
break;

case 'D': // Поворот вправо
robot_rotation_left();
break;

case 'A': // Поворот влево
robot_rotation_right();
break;

case 'S': // Движение назад
robot_back();
break;

case 'U': // Серва поднимается
if(i > min_pos) myservo1.write(i -= step_servo);
break;

case 'J': // Серва опускается
if(i < max_pos) myservo1.write(i += step_servo);
break;

case 'K': // Серва поворачивается вправо
if(i2 > min_pos) myservo2.write(i2 -= step_servo);
break;

case 'H': // Серва поворачивается влево
if(i2 < max_pos) myservo2.write(i2 += step_servo);
break;

case 'B': // Бластер
D10_High;
break;

case 'C': // Клаксон
horn();
break;

case ']': // запрос состояния аналоговых датчиков
byte2char(A6_Read,A7_Read);
break;

case 'V': // Включить/Выключить фары
if(light_stat)
{
D9_Low;
light_stat=false;
} else
{
D9_High;
light_stat=true;
}
break;
}
if(inByte>47 && inByte<58) speed=(inByte-47)*17+85; //скорость вращения колес

} else packet_id(inByte);
}
// wdt_reset();
}

//**************************************** ************
void horn()
{
for(uint8_t i=0; i<12; i++) beep(70, random(100, 2000)); //звуковое оповещение
}

void robot_go()
{
motor1.run(FORWARD); //движемся вперед
motor2.run(FORWARD); //движемся вперед
motor3.run(FORWARD); //движемся вперед
motor4.run(FORWARD); //движемся вперед
}

void robot_back()
{
motor1.run(BACKWARD); //движемся назад
motor2.run(BACKWARD); //движемся назад
motor3.run(BACKWARD); //движемся назад
motor4.run(BACKWARD); //движемся назад
}

void robot_left()
{
motor2.run(FORWARD); //Повернем влево
motor3.run(FORWARD); //Повернем влево
}

void robot_right()
{
motor1.run(FORWARD); //Повернем вправо
motor4.run(FORWARD); //Повернем вправо
}

void robot_stop()
{
motor1.run(RELEASE); //Останавливаем колеса
motor2.run(RELEASE); //Останавливаем колеса
motor3.run(RELEASE); //Останавливаем колеса
motor4.run(RELEASE); //Останавливаем колеса
}

void packet_id(uint8_t inbyte) //проверяем идентификатор пакета "cm="
{
switch (inbyte)
{
case 'c':
packid=2;
break;

case 'm':
packid*=2;
//packid=packid<<1;
break;

case '=':
packid*=4;
//packid=packid<<2;
break;

default:
packid=0;
}
}

void byte2char(uint16_t inbyte0, uint16_t inbyte1)
{
char bytetochar[5];
uint8_t buf_answer[]="{\"dat1\":\"0000\",\"dat2\":\"0000\"}" ;

itoa(inbyte0+10000, bytetochar, 10);
buf_answer[9]= bytetochar[1]; buf_answer[10]= bytetochar[2]; buf_answer[11]= bytetochar[3]; buf_answer[12]= bytetochar[4];

itoa(inbyte1+10000, bytetochar, 10);
buf_answer[23]= bytetochar[1]; buf_answer[24]= bytetochar[2]; buf_answer[25]= bytetochar[3]; buf_answer[26]= bytetochar[4];

UART_SendArray(buf_answer, sizeof(buf_answer)-1);
}

Верно или зачем тебе голова мальчик?
djam700 вне форума   Ответить с цитированием
Старый 04.12.2016, 21:45   #5
vova606
Member
 
Регистрация: 14.04.2015
Сообщений: 45
Вес репутации: 0
vova606 is an unknown quantity at this point
По умолчанию Re: Модуль "CyberBot-3"

Я пытаюсь реализовать отправку данных температурного датчика, УЗД на web интерфейс вместе с изображением камеры, но абсолютно не получается(((
Еще идея питания от солнечной панели, которая вращается на серво, аккумулятора.
И вывод данных гироскопа на тот же web интерфейс в виде графического представления.
Реально ли это реализовать? к сожалению единомышленников и программистов в моем окружении нет
vova606 вне форума   Ответить с цитированием
Старый 06.12.2016, 16:39   #6
cyberlab
Senior Member
 
Регистрация: 25.11.2013
Сообщений: 116
Вес репутации: 0
cyberlab is an unknown quantity at this point
По умолчанию Re: Модуль "CyberBot-3"

Цитата:
Реально ли это реализовать?
реально
cyberlab вне форума   Ответить с цитированием
Старый 09.12.2016, 19:19   #7
volter5000
Junior Member
 
Регистрация: 02.09.2015
Сообщений: 5
Вес репутации: 0
volter5000 is an unknown quantity at this point
По умолчанию Re: Модуль "CyberBot-3"

А намечается ли развитие проекта. Например на андроид приложение. Дополнительные какие-то возможности. Я в пиашпи не силен, пытался разобраться, но все бесполезно. Робот на Вашем по ездил, но возможности сводят функционал к нулю. Думаю к своему роботу прикрутить бункер с кормом для кота. Будет полезно покормить кота когда долго в отъезде и поглядеть как он там.
volter5000 вне форума   Ответить с цитированием
Старый 12.12.2016, 12:10   #8
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,616
Вес репутации: 9821
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Модуль "CyberBot-3"

Цитата:
Сообщение от volter5000 Посмотреть сообщение
А Робот на Вашем по ездил, но возможности сводят функционал к нулю.
Мы дали роботу базовые функции, этого достаточно для адаптации под свои нужды

Цитата:
Я в пиашпи не силен, пытался разобраться, но все бесполезно.
Он не на PHP , а на Sh
Admin вне форума   Ответить с цитированием
Старый 23.12.2016, 01:06   #9
volter5000
Junior Member
 
Регистрация: 02.09.2015
Сообщений: 5
Вес репутации: 0
volter5000 is an unknown quantity at this point
По умолчанию Re: Модуль "CyberBot-3"

Вы меня простите за грамматику, писал с телефона. От того что он на SH мне не на много легче стало. Нужно наверное будет после нового года заняться поплотнее, может все таки разберусь что там к чему. Просто браузер - дело хорошее, но может у меня одного так, и с телефона и с ноутбука иногда подвисают команды. Из-за чего собственно я своего робота случайно и разбил об шифоньер. Просто мне кажется если написать приложение, и например управление сделать от акселерометра - будет по своему удобно, а главное без посредников в лице браузера. Если вдруг меня ненароком судьба толкнет позаниматься данным вопросом, могу ли я рассчитывать на Вашу помощь?
volter5000 вне форума   Ответить с цитированием
Старый 17.01.2017, 11:49   #10
Streg
Junior Member
 
Регистрация: 10.05.2015
Сообщений: 24
Вес репутации: 0
Streg is an unknown quantity at this point
По умолчанию Re: Модуль "CyberBot-3"

Цитата:
Сообщение от volter5000 Посмотреть сообщение
Просто браузер - дело хорошее, но может у меня одного так, и с телефона и с ноутбука иногда подвисают команды.
У меня была такая проблемка. Потом заметил, что роутер уходит в перезагрузку, и в этот момент ардуино выполняет последнюю команду до окончания загрузки роутера. В основном проявлялось в движении, аккумуляторы не тянули по току при работе моторов. Вылечил заменой аккумуляторов.
Streg вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 4 (пользователей: 0 , гостей: 4)
 

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 10:34. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика