Eu gostaria de começar o desenvolvimento de alguns projetos básicos do Arduino, mas ainda não possuo uma placa Arduino. Existe uma maneira de escrever meu código e imitá-lo / testá-lo usando um computador desktop, para que, depois que minha placa chegue, eu apenas precise enviar e executar meu projeto nele?
204
Respostas:
Há uma série de simuladores de Arduino por aí, muitos gratuitos e alguns produtos pagos também.
Muitos outros simuladores do Arduino estão lá fora, se você pesquisar, e novos estão sendo anunciados, mesmo com financiamento coletivo, o tempo todo.
fonte
Eu gosto de usar circuits.io, também conhecido como TinkerCAD, para isso.
É baseado em nuvem e possui alguns recursos interessantes, incluindo design e colaboração de PCB.
Na IMO, a simulação e a capacidade do Arduino são impressionantes e intuitivas.
fonte
Existem muitas opções no mundo dos simuladores eletrônicos, mas o circuits.io, também conhecido como TinkerCAD, é provavelmente o mais versátil do mercado.
Este é um exemplo de circuito que possui um controle remoto IR e uma tela LCD.
Disclaimer: Nós somos os fabricantes de circuitos 123D
fonte
Esteja ciente de que nenhum simulador reproduzirá situações da vida real. Existem muitas postagens no fórum do Arduino sobre problemas com código ou eletrônica, que acabam sendo algo sutis, como:
Por sua natureza, os simuladores não podem reproduzir tudo isso. Mesmo que pudessem, você pensaria em alternar a opção "inserir ruído aleatório dos motores"?
Para se preparar para a chegada do quadro, faça o download do IDE e inicie a programação. Você pode instalar bibliotecas, escrever códigos e livres de erros de sintaxe, organizá-las perfeitamente e estar geralmente pronto para o grande dia em que o hardware estiver em suas mãos.
Divirta-se e divirta-se experimentando seu Arduino!
fonte
Você pode usar o Yenka (gratuito para uso doméstico) para simular Arduino, PIX, PIXACE e outras placas com E / S digital, analógica e serial. Ele fornece muitos componentes e projetos de amostra.
Captura de tela:
fonte
Sim, você pode tentar usar o Proteus ISIS para simular seu código ...
Para emulação completa do Arduino, existe um programa shareware chamado VBB (Virtual BreadBoard) , eu tentei também e foi legal.
Edit: Você pode conferir meu tutorial detalhado aqui sobre como simular o Proteus ISIS
fonte
Acredito que este site tenha uma lista de emuladores e simuladores, juntamente com seu preço e disponibilidade.
Atualizar:
Como alguns usuários mencionaram que há links quebrados nesse site, aqui está uma seleção de emuladores que encontrei. Observe que algumas descrições podem ter sido obtidas no link mencionado:
Emulino : É um software baseado em Linux de código aberto no desenvolvimento inicial que emula MCUs específicos para Arduino.
Emulare : é um emulador de hardware de uso geral. O objetivo é fornecer uma interface central para criar simulações eletrônicas para o desenvolvimento de software embarcado. No momento, o emulare se concentra na linha de microcontroladores ATMega (o Arduino UNO possui o processador ATMega).
SimAVR : é um novo simulador de AVR para linux ou qualquer plataforma que use avr-gcc. O simulador carrega arquivos ELF diretamente e existe até uma maneira de especificar parâmetros de simulação diretamente no código emulado usando uma seção .elf. Ele suporta a emulação de muitos processadores ATMega e é mencionado que é fácil adicionar novos.
Amtel Studio : Isso parece não mencionar o termo emulação, mas é um IDE sofisticado para depurar seu código para muitas plataformas, especialmente o Arduino. O Atmel Studio 7 apresenta a importação direta de projetos com um clique, criada no ambiente de desenvolvimento do Arduino. Seu esboço, incluindo as bibliotecas que ele referenciar, será importado para o Studio 7 como um projeto C ++. Depois de importado, você pode aproveitar todos os recursos do Studio 7 para ajustar e depurar seu design. O Atmel Studio 7 suporta totalmente o poderoso depurador incorporado na placa Arduino Zero. Para outras placas Arduino, estão disponíveis adaptadores de blindagem que expõem conectores de depuração ou alterne para uma das muitas placas Xplained-Mini / PRO disponíveis para aproveitar totalmente o ecossistema Atmel HW.
Você ainda pode usar simuladores como o EasyEDA para testar seu código e, na maioria dos casos, poder executá-lo no dispositivo. Mas observe que, dada a natureza dos componentes eletrônicos, talvez seja necessário fornecer resistores externos, capacitores etc. para obter os resultados esperados.
fonte
A Virtualbreadboard possui uma nova edição do VBB4Arduino 'Two Arduino' que inclui AMBOS um emulador JVM Arduino E um simulador de conjunto de instruções AVR com exemplos que cobrem quase todos os exemplos de distribuição do Arduino e um monte de hardware periférico - LCD, WS2812 Neo LEDS, Motors, Servo's , Analisador lógico e muito mais.
http://www.virtualbreadboard.com
Disclaimer: Eu sou o autor do Virtual Breadboard
fonte
Experimente o Simulator for Arduino - é o melhor, mas somos tendenciosos, pois fazemos parte da equipe de desenvolvimento. Nem todo mundo quer pagar US $ 19,99, embora quase 5 mil usuários do Arduino paguem nos últimos anos. Existe uma versão gratuita do Simulator for Arduino, que dura 45 dias ou 100 cargas de esboço e 200 linhas no máximo. Experimente e compre se puder pagar e / ou se parecer que vale a pena.
Se houver algo errado ou que possa ser melhorado, avise-nos - todo mundo faz e tem, e é por isso que o Simulator for Arduino foi 99% construído por idéias de usuários e relatórios de erros.
Além disso, o único outro programa que tentamos com qualidade aproximada é o Proteus, mas este é um estúdio completo de design de PCBs e parece muito caro - ou seja, muito mais do que US $ 20. E planejamos ignorar uma solicitação recente do usuário para aumentar o preço para US $ 200.
fonte
Você poderia, por exemplo, usar meu simulador. É especialmente adequado para aplicações do tipo CLP, onde a multitarefa é obtida pela avaliação cíclica de objetos do tipo circuito interconectados: Timers, Marcadores, Travas, Oneshots e Registradores. Você pode usá-lo para simular seu sistema controlado também, como fica claro nos exemplos no download. Possui capacidades de visualização modestas, pode desenhar gráficos de tempo e permite acessar e alterar cq force todas as variáveis em tempo real durante uma simulação em execução. Além disso, você pode congelar o tempo. Quando você está satisfeito com o comportamento do seu controle, ele gera o código C para ser carregado em um Arduino real.
https://pypi.python.org/pypi/SimPyLC
fonte
Se você quer ser capaz de "testar a unidade" usando um computador desktop, posso oferecer uma biblioteca que escrevi chamada arduino_ci .
Não oferece emulação. Você expressaria seus testes em código. Por exemplo, aqui está um teste extraído da documentação de referência que valida os dados gravados em uma porta:
Na prática, você provavelmente não chamaria as
digitalWrite
funções diretamente - você chamaria uma função em sua biblioteca e, em seguida, verificaria se o "estado mundial" (representado aqui pelaGODMODE
construção) corresponde ao que você esperava que sua biblioteca fizesse.fonte
Sim, você pode, e com bastante facilidade. Existe uma maravilhosa simulação on-line (totalmente gratuita) chamada TinkerCAD . Possui uma excelente simulação de placa de ensaio, com peças como transistores, LEDs, ICs e Arduino. Você pode programar o Arduino e executar tudo em uma simulação ao vivo que inclui entradas interativas (botões de pressão, interruptores DIP, etc.).
[Editar: O texto a seguir se refere à funcionalidade que foi movida para Circuits.io , ou seja, Eagle PCB ]
Isso não é tudo. Ele também inclui esquemas de guias separados para o seu circuito e outro guia para o design de placas de circuito impresso da placa de ensaio! Ou você pode simplesmente fazer seus esquemas do zero e fazer seu PCB a partir daí.
Você pode fazer seus projetos de circuito e comprá-los. Você pode fazer tudo isso em circuits.io e não corre o risco de estragar seu Arduino real. Ele também possui indicadores de aviso na simulação (por exemplo, se você não usou resistência suficiente em um LED ou IC).
fonte