quinta-feira, 2 de agosto de 2012

Projeto completo de um robô wifi


                Projeto completo de um robô wifi

O forum está em russo.  Eu fiz conforme está escrito a baixo e tudo está funcionando. Logo posto o video

Tem que regravar a bin do roteador com os novos aquivos já com o controle do robô


Sobre














OR-WRT painel de controle.
Descrição do projeto
Esta é subprojeto do projeto de Robótica Aberto, destinada à produção de fácil utilização, baixo custo plataformas para a robótica hobby (passatempo também não só). Esta meta subprojeto é desenvolver ready-to-flash firmware para SOHO routers wi-fi, que permite usar os roteadores baseados em linux como alguns dispositivos wi-fi de cabeça para robôs controlados por hobby. Router será capaz de controlar UART e dispositivos USB (para o momento, UVC-webcams, algumas placas MCU e alguns adaptadores USB-UART são suportados). Firmware é baseado no OpenWRT, autor - elmot (elijah.mot [at] gmail.com).
URL para o fórum sobre esse projeto
Licença
Você pode usar livremente e / ou modificar os materiais do projeto para qualquer propósito não-comercial. Para a licença comercial você tem que contactar o autor (elijah.mot [at] gmail.com).
ATENÇÃO
Você está fazendo todas as modificações em sua própria conta e risco. Advertimos que desmontar o router (para ligar uart-interface), tanto quanto piscar firmware personalizado, pode levar à perda de garantias ou até mesmo a danos dispositivo. Comportamento do robô inesperado pode levar a danos ou até mesmo ferir. O autor do firmware, nem Open-robotics.ru, nem OpenWRT.org não carregam qualquer responsabilidade por quaisquer consequências directas ou indirectas de projetos de uso de materiais.
Equipamento suportado
Roteadores
TP-Link MR3020
TP-Link WR703N
D-Link DIR-320
D-Link DIR-320 NRU
  • Roteadores WiFi:
    • TP-LINK MR3020
    • TP-LINK WR703N
    • D-Link DIR-320 (mas não DIR-320NRU, conhecido como "H / W ver B1"!),
    • ASUS wl500gP (testado por ddcharacter)
    • Podem ser quaisquer outros roteadores, com base em SoC Broadcom BCM47xx/53xx ou Atheros AR9331 (ainda não testado)
    • Você pode tentar modificar firmware que você possui para outros equipados com USB roteadores compatíveis com   http://openwrt.org/
USB-Webcams
Todos UVC-webcams (considerar esta lista - http://www.ideasonboard.org/uvc/
O ruído de vídeo é relatado com webcams Logitech С-270
Nós recomment MJPEG-webcams, mas YUV de webcams podem ser usados ​​também (mas com aumento da latência de vídeo-streaming).
USB-UART adaptadores
  • Silicon Labs CP210x, incluindo OR-USB-UART-v1
  • Pololu orangotango SVP-1284 (com algumas correções, veja abaixo)
  • Outros não foram verificados, o mais provável será suportado ..
A instalação do firmware
D-Link DIR-320
  1. Configure o cliente tftp (incluído na vitória distributiva 7, mas não é instalado como padrão).
  2. Conecte o computador com o cabo RJ-45 para qualquer LAN-porta em roteador
  3. Configuração IP 192.168.0.2 para LAN computador adaptado
  4. aberta janela do DOS-prompt e preparar (pode ser em. bat) o comando "tftp 192.168.0.1 PUT <trx-file-name>"
  5. Ligue poder roteador
  6. Aguarde exatamente dois segundos e executar o comando preparado. LAN LED deve começar a piscar com freqüência por alguns segundos, depois que o comando deve ser concluída com êxito e escrever em algo console como (dígitos podem ser diferentes):
    • Começam a piscar ****
    • Bem sucedida transferência: 3592480 bytes em 11 сs e 281134 bytes / s
  7. Aguarde cerca de cinco minutos. Quando firmware é recarregada, e roteador não se conectar ao Wi-Fi (porque pouco provável a sua casa WiFi é chamado de "OpenWrt" e tem a senha "1"), o lado azul LED começa a acender e sair a cada dez segundos.
Robot firmware criação
Há duas maneiras de configurar OR-WRT wirmware
  • ssh 192.168.0.1 , com LAN cabo conectado a qualquer porta do roteador LAN / WAN. Também ssh <wifi ip> , se wi-fi já está configurado e para cima. Raiz de login, senha 123
  • Digite no navegador http://192.168.0.1 com cabo LAN ou <wifi http:// IP> via wi-fi, wi-fi, se já está configurado e para cima. Admin Login, senha oradmin. Há um link para páginas de administração na capa.
Início conexão WiFi
Robot dispositivo cabeça (router personalizada) é suposto para ser conectado a uma rede doméstica Wi-Fi como o cliente de IP estático.
  • Selecione IP aproximando. Deve ser na faixa de IP da rede, para não ser occuped, e estar fora da faixa de endereços DHCP.
  • Interface web aberto, páginas depois de administrador, e não há uma página de "WiFi". Lá você pode configurar:
    • proteção: WPA-PSK/WPA2-PSK NONE,
    • rede SSID
    • senha
    • IP estático
    • netmask
    • GW padrão
    • dns
Como uma rede de seleção de configuração, firmware gateway padrão pings abordar cada dez segundos. Se o ping não for bem sucedida, o LED azul está aceso para os próximos dez segundos. Assim, pode iluminar tempos em tempos, mesmo que wi-fi está funcionando IP em caso de queda de pacotes (isso acontece vez em quando).
Configurações da webcam
Na página de configurações da câmera, você pode escolher:
  • resolução
  • taxa de quadros
  • número da câmera (conexão de várias câmeras por meio de USB-hub é possível)
  • Modos YUV ou MJPEG
Uso de Firmware
Videostream e Singler quadros
  • Videostream em MJPG formato: http://wifi-ip:8080/?action=stream
  • Único quadro em http://wifi-ip:8080/?action=snapshot jpg
UART
UART pinout no DIR-320.
Interno UART
Há duas maneiras de acessá-lo
  • ser2net daemon redireciona o tráfego UART através da porta TCP 2000
  • você pode escrever a UART com http protocola no método POST URL / cgi-bin/serial.cgi, parâmetro Http valor SERIAL_DATA será enviado para UART
Silicon Labs CP210x (OR-USB-UART)
Adicione a seguinte linha ao /etc/config/ser2net.conf arquivo:

Após a reinicialização do roteador o tráfego de série será redirecionado para a porta TCP 3001
Pololu orangotango SVP-1284
Graças a tenik, eu era capaz de ligar o roteador para Pololu Orangotango:

Acrescente as seguintes linhas de / etc / rc.local para reiniciar UART módulo do kernel:
rmmod usbserial
insmod usbserial vendor=0x1ffb product=0x008

Anexar seguintes linhas de / para etc/config/ser2net.conf:
3001:raw:600:/dev/ttyUSB0:115200 NONE 1STOPBIT 8DATABITS -XONXOFF -LOCAL -RTSCTS
3002:raw:600:/dev/ttyUSB1:115200 NONE 1STOPBIT 8DATABITS -XONXOFF -LOCAL -RTSCTS
3003:raw:600:/dev/ttyUSB2:115200 NONE 1STOPBIT 8DATABITS -XONXOFF -LOCAL -RTSCTS

Após a reinicialização do roteador, portas Pololu de 3 UART são acessíveis nas portas TCP 3001, 3002, 3003, respectivamente.
Como modificar firmware
Para modificação de firmware grave ver a documentação na  https://openwrt.org/
Upload personalizados páginas web para controle de robô
Webpages reais está disponível para download através de administração robô "site". Para novas páginas upload por WiFi eu usar o comando:
pscp.exe-r-123-pw scp www / * root@192.168.1.120 :/ www
pscp é a utilidade para o SSH de upload de Putty distributiva.
Não faça upload de arquivos para / cgi-bin / * desta forma, os arquivos enviados terá erradas atributos linux e eles não irão funcionar.
Problemas não resolvidos
  • Latência de vídeo. Em 160 * 120,30 fps MJPG modo é mínima, mas ainda existe.
  • Não fácil de usar método de alteração de senha, somente através de SSH console (comando passwd).
  • Segurança. Robô com firmware tal deve ser controlada através de protocolo seguro. Agora o vídeo é transmitido criptografado em porta 8080. Web-face e controles, através de http ou https, com ou wtihout senha. O método mais correto - https + senha, mas a conexão https é muito lenta.
  • Webface roteiros escritos em awk e cinzas, o apoio é difícil, precisa ser migrado para Lua.
  • Webface é undeimplemented - páginas de configurações sempre mostra os valores padrão em vez de configurações atuais.
Outras advertências
  • Não desativar o HTTP e HTTPS, ao mesmo tempo. Neste caso, a reconfiguração do roteador estará disponível apenas através de SSH.
  • Não se esqueça sobre os riscos de segurança. Lembre-se que alguém pode espionar você através de webcam, e um robô móvel pode danificar alguma coisa ou até mesmo causar lesões.
Download
O que por dentro?
  • Ready-to-use firmware. Trx formato.
  • Kernel e addons para ImageBuilder padrão do OpenWRT (10.03.01-RC6), utilizado para construir o firmware.
  • make.sh arquivo, que constrói e embala o firmware.
Links

Apoiar ( http://sourceforge.net/p/orwrt/tickets/ )
OpenWRT ( http://sourceforge.net/p/orwrt/tickets/)

Putty ( http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html ) - um cliente SSH universal
para Windows
Fonte  " http://roboforum.ru/ "
Categoria : Robótica


Pagina controle + hex para o PIC16F876A
Baixar
PCB Robô wifi
Baixar
PCB driver motor
Baixar