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

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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 21.04.2017, 11:25   #1
uaz236
Junior Member
 
Регистрация: 23.03.2017
Сообщений: 6
Вес репутации: 0
uaz236 is an unknown quantity at this point
По умолчанию wifi 3020 и (тележка) arduino uno

Доброго дня уважаемые формучане, начну по порядку.
Мною был куплен базовый комплект робота на гусеницах

Развернуть для просмотра

[свернуть]

все работает по bt и проблем нет( сейчас он конструктивно иначе выглядит но суть не меняется) примерный скетч (двигатели шевелятся).

Развернуть для просмотра

int pinLB = 12; // define pin 12
int pinLF = 3; // define pin 3
int pinRB = 13; // define pin 13
int pinRF = 11; // define pin 11
int val;
void setup()
{
Serial.begin(9600); // define pin for motor output
pinMode(pinLB,OUTPUT); // pin 12
pinMode(pinLF,OUTPUT); // pin 3 (PWM)
pinMode(pinRB,OUTPUT); // pin 13
pinMode(pinRF,OUTPUT); // pin 11 (PWM)
}
void advance() // move forward
{
digitalWrite(pinLB,LOW); // right wheel moves forward
digitalWrite(pinRB, LOW); // left wheel moves forward
analogWrite(pinLF,255);
analogWrite(pinRF,255);
}
void stopp() // stop
{
digitalWrite(pinLB,HIGH);
digitalWrite(pinRB,HIGH);
analogWrite(pinLF,0);
analogWrite(pinRF,0);
}
void right() // turn right (single wheel)
{
digitalWrite(pinLB,HIGH); // left wheel moves forward
digitalWrite(pinRB,LOW); // right wheel moves backward
analogWrite(pinLF, 255);
analogWrite(pinRF,255);
}
void left() // turn left (single wheel)
{
digitalWrite(pinLB,LOW); // left wheel moves forward
digitalWrite(pinRB,HIGH); // right wheel moves backward
analogWrite(pinLF, 255);
analogWrite(pinRF,255);
}
void back() // move backward
{digitalWrite(pinLB,HIGH); // motor moves to left rear
digitalWrite(pinRB,HIGH); // motor moves to right rear
analogWrite(pinLF,255);
analogWrite(pinRF,255);
}
void loop()
{ val=Serial.read();
if(val=='U')advance();
if(val=='D')back();
if(val=='L')left() ;
if(val=='R')right();
if(val=='S')stopp();
}
[свернуть]
.

Решил сделать из него wifi тележку и столкнулся с такой проблемой.
собрал, подключил wifi tp-link 3020, залил в него CyberBot, как положено, но тележка не шевелится и индикация rx tx на самом uno молчит.
Провел много времени на форумах, нашел тестовые скетчи, в итоге убедился в связке роутера и uno, но вот запустить эту систему так и не смог, как только все делаю по инструкции, заливаю вот этот скетч, тишина.. и мертвые скосами стоят
вот что заливал в урдуйну:

Развернуть для просмотра

PHP код:
#include <CyberLib.h>  

#define motors_init {D4_Out; D5_Out; D6_Out; D7_Out;}   
uint8_t inByte;
uint8_t speed=255;

void setup()    
{   
  
motors_init;  
  
D11_Out;  D11_Low;
  
randomSeed(A6_Read); 
  for(
uint8_t i=0i<12i++) beep(70random(1002000));   
  
UART_Init(57600);   
  
wdt_enable (WDTO_500MS);     
}    

void loop()    
{    
  if (
UART_ReadByte(inByte))
  {    
    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;     
        
    }           
   if(
inByte>47 && inByte<58speed=(inByte-47)*25+5;
  }   
 
wdt_reset();    
}  

void robot_go() 

  
D4_Low
  
analogWrite(5speed);  
  
analogWrite(6speed); 
  
D7_Low


void robot_back() 

   
D4_High;  
   
analogWrite(5255-speed);  
   
analogWrite(6255-speed); 
   
D7_High


void robot_stop() 

  
D4_Low;  
  
analogWrite(50);  
  
analogWrite(60); 
  
D7_Low;   


void robot_rotation_left() 

  
D4_Low
  
analogWrite(5speed);  
  
analogWrite(6255-speed);  
  
D7_High


void robot_rotation_right() 

  
D4_High;  
  
analogWrite(5255-speed);  
  
analogWrite(6speed);  
  
D7_Low
}
[свернуть]


прошу помощи у тех кто запускал что нибудь подобное, помочь разобраться, самому, хотя бы подобными скетчами поделиться.
Что делал: скорость обмена менял, тестировал всю цепочку обмена роутер-ардуина при тесте лампочки моргают но как только дело доходит до скетча, жмакаю на кнопки веб мордочки, но ничего не происходит
uaz236 вне форума   Ответить с цитированием
Старый 21.04.2017, 14:28   #2
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 8,943
Вес репутации: 9141
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
По умолчанию

А с сериал монитора пробовали команды посылать?
Admin на форуме   Ответить с цитированием
Старый 21.04.2017, 15:09   #3
uaz236
Junior Member
 
Регистрация: 23.03.2017
Сообщений: 6
Вес репутации: 0
uaz236 is an unknown quantity at this point
По умолчанию

Цитата:
Сообщение от Admin Посмотреть сообщение
А с сериал монитора пробовали команды посылать?
К моему сожалению не понимаю какую команду куда надо послать чтобы хоть немножко разобраться.
в теории осознаю что нужно послать на порты что у меня в первом скетче команду и посмотреть что будет через консольку роутера?
uaz236 вне форума   Ответить с цитированием
Старый 21.04.2017, 16:02   #4
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 8,943
Вес репутации: 9141
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
По умолчанию

Например послать команду "W"
Сериал монитор находится в ArduinoIDE
Admin на форуме   Ответить с цитированием
Старый Сегодня, 00:02   #5
uaz236
Junior Member
 
Регистрация: 23.03.2017
Сообщений: 6
Вес репутации: 0
uaz236 is an unknown quantity at this point
По умолчанию

Цитата:
Сообщение от Admin Посмотреть сообщение
Например послать команду "W"
Сериал монитор находится в ArduinoIDE
Подключил прибор по usb, через ide в окне "сериал монитора" подал команду , лампочка rx загорелась, но вот двигатели молчат, может подскажите в какую сторону рыть?
uaz236 вне форума   Ответить с цитированием
Старый Сегодня, 00:06   #6
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 8,943
Вес репутации: 9141
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
По умолчанию

А драйвера движков к каким пинам подключены?
Admin на форуме   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

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


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


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