Índice:

[2020] Usando dois (x2) Micro: bits para controlar um carro RC: 6 etapas (com imagens)
[2020] Usando dois (x2) Micro: bits para controlar um carro RC: 6 etapas (com imagens)

Vídeo: [2020] Usando dois (x2) Micro: bits para controlar um carro RC: 6 etapas (com imagens)

Vídeo: [2020] Usando dois (x2) Micro: bits para controlar um carro RC: 6 etapas (com imagens)
Vídeo: 😱¿Se podría decir que fueron a Estados Unidos? #playasdetijuana #murofronterizo #trump #tijuana 2024, Novembro
Anonim
[2020] Usando dois (x2) Micro: bits para controlar um carro RC
[2020] Usando dois (x2) Micro: bits para controlar um carro RC

Se você tem dois (x2) micro: bits, já pensou em usá-los para controlar remotamente um carro RC? Você pode controlar um carro RC usando um micro: bit como transmissor e outro como receptor.

Ao usar o editor MakeCode para codificar um micro: bit, você pode encontrar uma extensão chamada Radio que permite que um de seus micro: bit transmita dados pelo ar para outro micro: bit no mesmo grupo. Você pode enviar e receber dados facilmente usando a extensão de rádio para muitos projetos.

Neste tutorial, aprenderemos como usar dois (x2) micro: bits para controlar remotamente um carro RC. Verificaremos as etapas para configurar dois (x2) micro: bits e usar o editor MakeCode para explicar como os arquivos de amostra são codificados. Você pode baixar códigos de amostra prontos para jogar neste projeto e não precisa se preocupar em codificar tudo do zero. Você sempre pode personalizar os códigos de amostra posteriormente para seus próprios propósitos de aprendizagem.

Suprimentos:

Vamos começar! Para o transmissor e o receptor, usaremos dois (x2) micro: bits. Para baterias, recomendamos o uso de baterias AA e AAA de 1,5 V novas e descartáveis.

  • micro: bit x2
  • caixa de bateria x1
  • Pilhas 1,5 V AAA x2 (para o estojo da bateria)

Para o carro de brinquedo neste projeto, usaremos o carro Valenta Off-Roader RC. Valenta Off-Roader é um carro RC com motor micro: bit. É compatível com Lego Technic e equipado com dois (x2) micro motores de engrenagens nas rodas traseiras e um (x1) servo de direção integrado baseado no mecanismo de braço de equilíbrio Roberval.

  • Valenta Off-Roader x1
  • Pilhas 1,5 V AA x4 (para o carro)

Você também pode consultar as instruções de montagem do carro.

Etapa 1: Copiar arquivos de amostra para Micro: Bits

Copiando arquivos de amostra para micro: bits
Copiando arquivos de amostra para micro: bits
Copiando Arquivos de Amostra para Micro: Bits
Copiando Arquivos de Amostra para Micro: Bits
Copiando Arquivos de Amostra para Micro: Bits
Copiando Arquivos de Amostra para Micro: Bits
Copiando arquivos de amostra para micro: bits
Copiando arquivos de amostra para micro: bits

Para este projeto, preparamos arquivos de amostra MakeCode que você pode baixar para o seu computador. Como esses arquivos de amostra estão prontos para serem reproduzidos, você pode começar a reproduzi-los imediatamente.

Nesta etapa, baixe o arquivo Transmitter.hex e o arquivo Receiver.hex. Conecte seu computador e um micro: bit via cabo USB, e copie cada arquivo para cada um de seu micro: bit um de cada vez.

Primeiro, arraste e solte o arquivo Transmitter.hex em um micro: bit e use-o como micro: bit de "transmissor".

Em segundo lugar, arraste e solte o arquivo Receiver.hex em outro micro: bit e use-o como micro: bit "receptor".

Depois de copiar o arquivo de amostra para o micro: bit, desconecte-o do computador.

Conecte a caixa da bateria ao micro: bit "transmissor" e ligue-o. (Como alternativa, você também pode fornecer energia ao "transmissor" micro: bit conectando-o ao computador via cabo USB.)

Monte o "receptor" micro: morda seu carro e ligue a chave liga / desliga no controlador do motor.

Etapa 2: Revisão do arquivo de amostra Transmitter.hex

Revisão do arquivo de amostra Transmitter.hex
Revisão do arquivo de amostra Transmitter.hex
Revisão do arquivo de amostra Transmitter.hex
Revisão do arquivo de amostra Transmitter.hex
Revisão do arquivo de amostra Transmitter.hex
Revisão do arquivo de amostra Transmitter.hex

Transmitter.hex

Agora examinaremos o arquivo de amostra Transmitter.hex. Abra o editor MakeCode e clique no botão Importar. Abra o arquivo Transmitter.hex que você copiou para "transmissor" micro: bit.

no bloco inicial

Este bloco é chamado inicialmente de uma vez quando o micro: bit "transmissor" é ativado. Na extensão de rádio, você pode encontrar o grupo de conjuntos de rádio em bloco e 1 é definido, por exemplo. Este número deve ser o mesmo para "transmissor" micro: bit e "receptor" micro: bit, para que possam ser emparelhados para comunicação.

O arquivo usa recursos do acelerômetro. Inclinando seu "transmissor" micro: bit para baixo, para cima, para a direita ou para a esquerda, ele enviará sequências de rádio de "goForward" "goBackward" "goRight" ou "goLeft" para seu micro: bit "receptor".

no bloco inferior do logotipo

Nas funções de entrada, você pode encontrar o bloco no logotipo para baixo. Este bloco é executado sempre que você inclina o "transmissor" micro: bit para baixo ou para frente. No bloco, você também pode encontrar a string de envio de rádio "goForward" que enviará a string de rádio "goForward" pelo ar quando o micro: bit do "transmissor" for inclinado para baixo. Quando o "receptor" micro: bit recebe esta string, o carro irá para a frente.

no bloco de logotipo

Nas funções de entrada, você pode encontrar o bloco no logo acima. Este bloco é executado sempre que você inclina o "transmissor" micro: bit para cima ou para trás. No bloco, você também pode encontrar a string de envio de rádio "goBackward" que enviará a string de rádio "goBackward" pelo ar quando o "transmissor" micro: bit for inclinado para cima. Quando o "receptor" micro: bit recebe esta string, o carro vai para trás.

no bloco direito inclinado

Nas funções de entrada, você pode encontrar o bloco na inclinação para a direita. Este bloco é executado sempre que você inclina "transmissor" micro: bit para a direita. No bloco, você também pode encontrar a string de envio de rádio "goRight" que enviará a string de rádio "goRight" pelo ar quando o "transmissor" micro: bit for inclinado para a direita. Quando o "receptor" micro: bit recebe esta string, o carro vai virar à direita.

no bloco inclinado para a esquerda

Nas funções de entrada, você pode encontrar o bloco na inclinação para a esquerda. Este bloco é executado sempre que você inclina "transmissor" micro: bit para a esquerda. No bloco, você também pode encontrar a string de envio de rádio "goLeft" que enviará a string de rádio "goLeft" pelo ar quando o micro: bit do "transmissor" for inclinado para a esquerda. Quando o "receptor" micro: bit recebe esta string, o carro vira à esquerda.

Etapa 3: Adicionando extensão de servos

Adicionando extensão de servos
Adicionando extensão de servos
Adicionando extensão de servos
Adicionando extensão de servos
Adicionando extensão de servos
Adicionando extensão de servos

Extensão Servos

O seu editor MakeCode inclui extensão Servos? Abra o editor e verifique se inclui a extensão Servos no menu à esquerda. Vamos usá-lo no arquivo de amostra Receiver.hex. Esta extensão Servos será usada para calibrar o ângulo de direção. Se você não conseguir encontrar a extensão Servos, clique em Extensões na parte inferior do menu. Clique na extensão Servos e adicione-a ao menu.

Etapa 4: Revisão do arquivo de amostra Receiver.hex (Parte 1)

Revisão do arquivo de amostra Receiver.hex (Parte 1)
Revisão do arquivo de amostra Receiver.hex (Parte 1)
Revisão do arquivo de amostra Receiver.hex (Parte 1)
Revisão do arquivo de amostra Receiver.hex (Parte 1)
Revisão do arquivo de amostra Receiver.hex (Parte 1)
Revisão do arquivo de amostra Receiver.hex (Parte 1)
Revisão do arquivo de amostra Receiver.hex (Parte 1)
Revisão do arquivo de amostra Receiver.hex (Parte 1)

Receiver.hex

Agora examinaremos o arquivo de amostra Receiver.hex. Abra o editor MakeCode e clique no botão Importar. Abra o arquivo Receiver.hex que você copiou para "receiver" micro: bit.

no bloco inicial

Este bloco é chamado inicialmente de uma vez quando o micro: bit "receptor" é ativado. Nas funções de rádio, você pode encontrar o grupo de conjuntos de blocos de rádio e 1 é definido, por exemplo. Este número deve ser o mesmo para "transmissor" micro: bit e "receptor" micro: bit, para que possam ser emparelhados para comunicação.

Da extensão de funções, o bloco de direção da função é criado. Arraste e solte o bloco de direção de chamada dentro do bloco de partida. Ele chamará a função de direção para endireitar a direção do seu carro.

bloco de direção de função

Por padrão, a direção de um carro nem sempre está sempre à frente por causa de seu servo. Se você olhar para o carro de cima, a direção pode estar um pouco para a direita ou para a esquerda. Este bloco de direção de função é usado para calibrar o ângulo do servo em sua posição central, de modo que a direção do carro seja ajustada em linha reta.

Vamos supor que o servo esteja conectado ao pino P2 no controlador do motor. Vamos configurar que o servo oscila de 0 a 180 graus e seu ângulo central é de 90 graus.

Na extensão de funções, o bloco de direção da função foi criado. Na extensão Variáveis, crie um novo centro de variável para calibrar o servo de direção. Use a função matemática para fazer 90 + 0 colchetes. Arraste e solte o centro definido para 90 + 0 bloco dentro do bloco de direção da função.

Na extensão Servos, arraste e solte e defina a faixa de servo P2 de 0 a 180. Certifique-se de escolher o pino P2 e a faixa de rotação de 0 a 180 graus.

Da extensão Servos, arraste e solte o ângulo P2 do servo ajustado para o centro. Certifique-se de definir o ângulo para o centro da variável.

Olhe para o seu carro de cima. Como se parece?

Se a direção estiver um pouco para a esquerda, defina o centro para 90 - 5 para compensar -5 graus para a direita.

Se a direção estiver um pouco para a direita, defina o centro para 90 + 5 para compensar +5 graus para a esquerda.

(Continuando para a próxima etapa)

Etapa 5: Revisão do arquivo de amostra Receiver.hex (Parte 2)

Revisão do arquivo de amostra Receiver.hex (Parte 2)
Revisão do arquivo de amostra Receiver.hex (Parte 2)

Receiver.hex (continuação)

Como podemos definir direção e velocidade? O carro está equipado com um micromotor M1 na roda traseira esquerda e M2 na roda traseira direita.

função goForward block

Motor M1 da roda traseira esquerda

O pino P13 é usado para direção. Na extensão Pins, arraste e solte o pino de gravação digital P13 para 0 para que M1 avance.

O pino P12 é usado para velocidade (a velocidade máxima é 1023). Da extensão de Pins, arraste e solte o pino de gravação analógica P12 a 1023 para que M1 funcione na velocidade máxima.

Motor M2 da roda traseira direita

O pino P15 é usado para direção. Na extensão Pins, arraste e solte o pino de gravação digital P15 para 0 para que M2 avance.

O pino P14 é usado para velocidade (a velocidade máxima é 1023). Da extensão de Pins, arraste e solte o pino de gravação analógica P14 a 1023 para que M2 funcione na velocidade máxima.

Na extensão básica, arraste e solte pausa (ms) bloco de 1000 para manter o carro avançando por 1000 milissegundos (1 segundo) e execute a função de parada de chamada para parar o carro com segurança.

função goBackward block

Motor M1 da roda traseira esquerda

O pino P12 é usado para direção. Na extensão Pins, arraste e solte o pino de gravação digital P12 para 0 de modo que M1 volte.

O pino P13 é usado para velocidade (a velocidade máxima é 1023). Da extensão de Pins, arraste e solte o pino de gravação analógica P13 a 1023 para que M1 funcione na velocidade máxima.

Motor M2 da roda traseira direita

O pino P14 é usado para direção. Na extensão Pins, arraste e solte o pino de gravação digital P14 para 0 para que M2 vá para trás.

O pino P15 é usado para velocidade (a velocidade máxima é 1023). Da extensão de Pins, arraste e solte o pino de gravação analógica P15 a 1023 para que M2 funcione na velocidade máxima.

Na extensão básica, arraste e solte pausa (ms) bloco de 1000 para manter o carro indo para trás por 1000 milissegundos (1 segundo) e execute a função de parada de chamada para parar o carro com segurança.

bloco de parada de função

Motor M1 da roda traseira esquerda

O pino P13 é usado para direção. Da extensão de Pins, arraste e solte o pino de gravação digital P13 para 0 de forma que M1 seja definido para a direção para frente.

O pino P12 é usado para velocidade (0 significa sem velocidade). Da extensão de Pins, arraste e solte o pino de gravação analógica P12 para 0 para que M1 pare.

Motor M2 da roda traseira direita

O pino P15 é usado para direção. Na extensão Pins, arraste e solte o pino de gravação digital P15 para 0, de forma que M2 seja definido para a direção para frente.

O pino P14 é usado para velocidade (0 significa sem velocidade). Na extensão Pins, arraste e solte o pino de gravação analógica P14 para 0 para que M2 pare.

Na extensão Functions, arraste e solte o bloco de direção da chamada para endireitar a direção do carro.

(Continuando para a próxima etapa)

Etapa 6: Revisão do arquivo de amostra Receiver.hex (Parte 3)

Revisão do arquivo de amostra Receiver.hex (Parte 3)
Revisão do arquivo de amostra Receiver.hex (Parte 3)

Receiver.hex (continuação)

Sempre que o "receptor" micro: bit captura a string de rádio enviada do "transmissor" micro: bit pelo ar, como o arquivo de amostra Receiver.hex pode classificá-lo e chamar a função relevante para controlar o carro?

no rádio recebeu bloco de string recebido

Traga este bloco da extensão de rádio e ele irá disparar uma ação definida dentro deste bloco sempre que uma nova string de rádio chegar ao micro: bit do "receptor".

se então bloquear

Traga este bloco da extensão Logic e ele classificará as ações dependendo da string recebida.

Se a string recebida for "goForward", o bloco chamará a função goForward.

Se a string recebida for "goBackward", o bloco chamará a função goBackward.

Se a string recebida for "goRight", defina o ângulo do servo de direção em -10 graus para a direita e o bloco chamará a função goForward.

Se a string recebida for "goLeft", defina o ângulo do servo de direção em +10 graus para a esquerda e o bloco chamará a função goForward.

Os arquivos de amostra explicados neste tutorial são muito básicos e você pode personalizar o código para seu próprio. Divirta-se!

Recomendado: