Projetos raspberry pi: tijolo lego idioma alternativo

Video: Raspberry Pi Lego Robot - Computerphile

Precisa de um novo projeto Raspberry Pi? Você pode executar algumas linguagens de terceiros sobre o tijolo LEGO, mas ev3dev coloca uma versão reduzida do Linux no tijolo. Você não precisa mudar nada sobre o tijolo porque ev3dev foge um cartão micro SD inserido no tijolo. Você pode facilmente reverter o seu tijolo LEGO de volta ao estado original, basta desconectar o cartão SD.

Video: Lego Power function control with Raspberry PI

A maior parte do trabalho de instalação envolve a criação o cartão SD com a distribuição Linux nele. É uma espécie de como criar o cartão SD para o próprio Raspberry Pi. em ev3dev.org, Você pode encontrar instruções sobre como criar o cartão SD sob o Mac, PC ou sistema operacional Linux.

Depois de criar o cartão SD, você pode conectar o tijolo para o Raspberry Pi. Você tem que ligar o tijolo diretamente em uma das portas USB do o Raspberry Pi (em oposição a um hub USB) para que ele funcione.

Você se comunica com o tijolo LEGO do Raspberry Pi usando uma sessão Secure Shell (SSH). Abra uma janela de linha de comando e configurar uma sessão. Isto é o que você verá:

senha ssh root @ 192.168.2.3root @ de 192.168.2.3: _____ ______ _ | ___ / __ | | _____ __ / _ / / | _ / _` | / _ / / | __ / V / ___) | (_ | | __ / V / ___ | _ / | ____ / __, _ | ___ |! _ / Jessie Debian GNU / Linux em Lego Mindstorms EV3 Os programas incluídos com o Debian GNU / linuxsystem são software-as condições de distribuição exatas gratuitos para cada programare descrito em arquivos theindividual em /usr/share/doc/*/copyright.Debian GNU / Linux vem com ABSOLUTAMENTE NENHUMA GARANTIA, até o limite permitido por login law.Last aplicável: Qua 05 de novembro 11:45:33 2014 de 192.168.2.1root@ev3dev: ~ #


Para Linux, tudo é um arquivo, e os motores LEGO não são excepção. Você falar com eles por escrito para um arquivo, e você recebe de volta informações listando um arquivo. Porque este é o Linux, a linha de comando normal, ainda solicita funcionar e você vai encontrá-lo útil para usar CD para mudar diretório e ls para ver quais arquivos estão no nível do diretório atual.

Video: LEGO BrickPi X -Y Table

Para utilizar este sistema de dentro do Python, você tem que gerenciar uma sessão SSH a partir de um programa. A maioria das pessoas recomendam usar Pexpect, mas você pode ter mais sucesso com paramiko. Instalá-lo usando o seguinte:

pip instalar paramiko --upgrade

O código a seguir mostra como abrir, executar e fechar uma sessão SSH a partir de Python.

Video: Raspberry pi 3 - DIY LEGO CASE BUILD!

`` `Ssh Sesson para EV3dev` `` importação de matemática paramikoimport sysimport, tempo, OS # Criar um SSH clientssh = paramiko.SSHClient () shell = " - debug = Truedef main (): print"Espere por tijolo para ser contactado"login () print "Agora falando com tijolo"send_command ("LSN") # Linux lista directoryssh.close () print "Agora desligando"sys.exit () funções # de acesso de login EV3devdef (): shellssh.load_system_host_keys globais () ssh.load_host_keys (os.path.expanduser ("~ / .ssh / known_hosts")) # Certifique-se de que adicionar automaticallyssh.set_missing_host_key_policy tecla # SSH do servidor remoto (paramiko.AutoAddPolicy ()) paramiko.util.log_to_file ("ev3brick.log") # Conectar-se à alteração de senha EV3 tijolo # à sua ownssh.connect ("10.42.0.3", Nome de usuário ="raiz", Password ="legobrick9") # Criar um shellshell raw = ssh.invoke_shell () wait_for_prompt () send_command ("cd / sys / class / tacho-motorn") #Torna comandos shorterdef wait_for_prompt (): # Criar uma nova receber bufferreceive_buffer = "enquanto não "#" em receive_buffer: # Obter a receber bufferreceive_buffer + = shell.recv (1024), se depuração: print send_command receive_bufferdef (comando): shell.send (comando) receive_buffer = "enquanto não "#" em receive_buffer: receive_buffer + = shell.recv (1024) se depuração ou "-bash" em receive_buffer: imprimir receive_bufferif __name__ == `__main __`: main ()

Publicações relacionadas