Saudações a todos!

Esse é uma pergunta já manjada e, talvez, sem importância. Já foi discutida aqui, mas precisa ser atualizada

Já ouvi aqui no LAB e em outros sites que o Arduino é coisa de criança e não pode ser usado profissionalmente.

Você usaria o Arduino para controlar uma caldeira de uma indústria?

Acontece que a plataforma evoluiu muito e essa concepção precisa ser revista.

O primeiro erro é achar que "Arduino" é o Arduino UNO.

Não! O Arduino não é apenas uma placa. É um ecossistema formado por:

- Uma filosofia;
- Software;
- Hardware;

Dessa forma, podemos dizer que as placas ESP* da Expressif também pertencem a esse ecossistema, pois podem ser programadas pela IDE do Arduino e usufruir de todas as bibliotecas da comunidade. A mesma coisa quanto aos Attinys e etc, etc...

Os principais argumentos usados contra o Arduino pelo que levantei são:
- Não possui suporte a threads
- ADC de baixa resolução
- A IDE não possui recursos de DEBUG
- A placas não são homologadas no Brasil
- Usam software livre e, portanto, não garantem a propriedade do código

Alguns desses argumentos já não valem mais, pois as novas placas Arduino já possuem ADC de 12 bits e processadores de dois núcleos.
O ESP32 também é bem parrudo nesse sentido e vem com um RTC embutido.

Não vou me alongar muito.

- Vocês conhecem outras desvantagens em usar o "Arduino"?
- Usa "Arduino" em seus projetos permanentes e experimentou problemas ?

Exibições: 2833

Responder esta

Respostas a este tópico

Graaande Discussão Pessoal, Parabens!

     Bem, do meu ponto de vista, as plaquinhas arduino são realmente para prototipar rapidamente,  mas ao final, vai da capacidade de cada um.

     Pessoalmente, em todos os projetos que fiz, utilizei as placas, seja a UNO ou a MEGA, exclusivamente pra prototipar, depois o projeto é passado pra o CAD EAGLE onde são geradas placas dedicadas ao projeto.

     Aqui cabe ressaltar questões como a questão da robustêz a sub e sobre tensões, ou interferências eletromagnéticas que os CLPs possuem,  quando você utiliza apenas o nucleo com um atmega seja um Attiny85, um atmega328 ou um atmega2560, todo o restante da estrutura esta em suas mãos, e se você tem conhecimento, poderá fazer proteções superiores as dos proprios CLPs.

     Falando sobre as questões citadas:

- Não possui suporte a threads(multi tarefas) -  Isso é relativo, estive lendo um artigo sobre threads( **** AQUI **** ) e o que ele expões é que na pratica, em um ambiente que tenha dois nucleos, você podera ter dois processamentos REAIS em andamento, se três nucleos três processos REAIS,  mas quando falamos de ambiente com um unico nucleo como é o caso de um atmega328, você poderá até ter a sensação de ter vários processos ao mesmo tempo, mas o que provoca isso são truques de programação baseados em velocidade de processamento,  OU SEJA, dá pra fazer isso em um arduino tambem.

- ADC de baixa resolução -  10 BITS 0 a 1024, Se isso é baixo ou alto, vai depender da necessidade do projeto, uma coisa eu sei, dá pra melhorar usando truques de valor de referencia ou usar chips ADC externos, eu mesmo tenho um aqui de 24bits que é pra balanças e só consigo usar com biblioteca pra o arduino.

Bem,  eu usaria e uso sim, para usos profissionais,  mas como eu disse, utilizando apenas o nucleo apenas o microcontrolador + cristal e ligações, o resto é MEU,  eu defino.

Weider, É isso mesmo. Você usa Arduino em seus projetos.

Quando falamos que estamos usando Arduino não significa necessariamente que estamos usando a PLACA.

Na verdade, estamos usando uma IDEIA.

Mesmo porque trata-se de hardware livre.

Quando os chineses fabricam um Arduino UNO mais barato não significa que seja uma placa pirata. É apenas a implementação de uma IDEIA chamada Arduino.

O mesmo acontece quando você constrói sua própria placa do seu jeito. Você está imbuído do espírito Arduino...

Zé augusto,

    A pouco tempo atras aproveitei no primeiro mandato da Dilma a disponibilidade de cursos gratis no Senai, pra fazer, CLP, Supervisorios, etc.

    O que vi por lá sobre o Arduino foi um grande preconceito, e isso dos profissionais, visto que era algo que se dá aula em escola comum como junto na grade com portugues, matematica e educação fisica.

   Acho que a turma confunde a curva de aprendizagem inicial do arduino com superficialidade, é obvio que pra alguem que nunca mexeu com eletrônica, pega um shield de um display e só encaixar e programar é algo MAGICO,  mas isso é somente a porta de entrada, a coisa pode ser muito mais profunda, tente mexer com registradores, ou ir a fundo numa comunicação I2C ou SPI na unha.

Quanto a questão de PODER, a galera se esquece que dentro do leque do proprio arduino temos o Arduino DUE, que é baseado em um microcontrolador ARM de 32 bits.

Já muita gente questiona a questão de projetos DIY onde é dificil trabalhar com SMD, e assim ficam restrito aos ATMEGA328 DIP,  dai falta conhecimento para conhecer o ATMEGA1284 que tem 40 Pinos(bem mais que os 28 do 328).

Sei lá cara, eu já montei uma placa multicore com 4 nucleos atmega328 se comunicando por i2c, 3 eram ligados a radios, e todos mandavam dados pra um nucleo central, a escolha de multi nucleos foi pra otimizar não só a velocidade, mas a confiabilidade.

Resumindo, A coisa toda depende do projeto e do nível de conhecimento do projetista,  pois meu raspbery Pi chegou a umas 2 semanas, e a primeira coisa que estou tentanto entender, é porque eu devo pagar R$ 150,00 quando posso comprar um atmega328 por R$ 4,00,  ou seja, onde posso ir com o raspbery pi que não consigo no mundo arduino. 

   

Eh isso que vc mesmo disse, depende do projeto, porque vc comprou o PI.
Em todo caso tem como rodar emulador de jogos nele que eh uma beleza, tem ate case para PI com aparencia de nintendinho muito bacana.
Ele com touchscreen tbm abre um leque enorme de opcoes.
Mas se seu lance sao pinos BEaglebone black da de lavada no Raspberry, BBB tem 7 pinos analogicos enquanto o PI tem 1, GPIO do BBB eh  Programmable Realtime Unit (PRU)  o que faz usar GPIO de forma muito mais rapida tanto eh que tem Machinekit (fork do LinuxCNC)  rodando nele mas nao serve para usar na industri por exemplo.

O preconceito as vezes eh pela forma como quem quer trabalhar com Arduino apresenta o seu produto, eu comprei 2 shields industriais e o que recebi por exemplo como manual de instrucoes eh coisa de amador, os drivers THB6064 da massmind.org eu recebi em papel sulfite mas nao me importei, sei que nao eh empresa, tranquilo. Pensa, nao tem grana para fazer um manual descente vai ter para supporte?
No exemplo da palestra do Ricardo ele cita que se vc comprar Siemens vc esta preso aos produtos dela, mas se eu comprar algo fora do padrao da industria eu nao fico amarrado com quem forneceu a solucao?

Arduino ajuda quem por exemplo quer aprender sobre determinada tecnologia, fazer um prototipo de baixo custo e ver se da certo, dando certo faz um com componentes melhores.

Minha experiencia, fiz maquinas para testar vazamento em cabeca do motor (aqui uma montadora eh cliente Yammar Diesel), na empresa eles passavam a cola da junta da cabeca do motor de forma manual, tinha hora que ia muita cola ou pouca cola e a junta apresentava falha no teste de vazamento, fizemos usando uma impressora scara opensource um teste e deu certo, hoje colocamos SCARA da NACHI e para detectar se tem cola ou nao usamos sistema VISION da keyence, se tiver modelo novo de cabeca do motor usando o sistema VISION eh muito simples de ajustar, se eu usasse o arduino eh um trabalhao danado, que nao eh qualquer um que executa. Hoje nao ocorre mais esse erro, dimuniu a quantidade de pessoa envolvida na linha de producao.
https://www.youtube.com/watch?v=EtROs9bQ7hU

Nunca considerei Arduino coisa de criança... Acho coisa de TI. 

Com o pessoal de TI não conseguia entender as formas de acesso a registradores, os Datasheets de componentes, coisas de eletrônicos resolveram encapsular tudo isso em bibliotecas, que são coisas de TI.

T.I. que é a "Tecnologia da Informação", que pelo nome mais parece curso de jornalismo... Preferia quando chamava informática mesmo ou Engenharia de Software como na origem.

Enfim, o Arduino propõe certamente uma nova abordagem para a programação de microcontroladores. A grande diferença é que deriva de metodos e soluções antigamente usadas em PC. O PC por definição possuia uma bios, drivers, etc. Diferente do microcontrolador.

Por definição um PC é aquilo que tem um botão de reset na frente e quando trava vc simplesmente usa ele. Um microcontrolador é aquilo que vc liga e espera absolutamente nunca trave, nunca falhe. Confia sua vida a eles. Eles controlam missões criticas como aparelhos hospitalares, ar condicionado, air bag, centrais de carro, freio, etc. Nunca se usaria um PC pra isso não apenas pelos custos envolvidos. Um sistema operacional é algo grande e complexo demais, com muitos pontos para falhar.

Ainda não consegui concluir se esse método é melhor ou pior para programar. De certo que é melhor para iniciantes uma vez que rapidamente ele consegue seus primeiros resultados. A frustração vem quando as coisas crescem e param de funcionar. Aih pode haver até arrependimento.

Mas certamente é uma maravilhosa ferramenta.

Ref:

https://en.wikipedia.org/wiki/Software_engineering

Acho que o Eduardo conseguiu captar a essência da mudança que está havendo.

Isso que está acontecendo com a eletrônica aconteceu com a área de TI há algum tempo atrás quando o PC se popularizou.

Com o surgimento dos PCs ficou muito fácil desenvolver "sistemas computadorizados". Não precisa nem fazer faculdade para sair "programando" por aí.

As primeiras linguagens comerciais como  DBase, Clipper e depois Visual Basic permitiram que "qualquer um" pudesse fazer sistemas para papelarias, escritórios de contabilidade, farmácias, etc.

E aí o profissional de TI, que cursou 4 anos de faculdade, perdia o sistema para o adolescente que ganhou o TRS-80 do pai, pois esse cobrava mais barato..

Uma boa parte das grandes empresas de TI no Brasil surgiram desses jovens empreendedores que foram mais espertos, pois viram que ali estava ser formando uma revolução. 

A área de TI não é regularizada até hoje. Na época, com a falta de mão de obra, as empresas chamavam os funcionários da contabilidade ou do RH para desenvolverem os sistemas e, se você fizesse uma pesquisa com o pessoal de TI nas empresas, veria que poucos possuíam diploma da área de TI, principalmente os chefes.

Com o surgimento da plataforma Arduino, "qualquer um", mesmo da área de TI, pode criar os seus "robozinhos" sem muito conhecimento de eletrônica. Basta uma ajudinha do Google ou de fóruns como esse.

Mas agora a "coisa" está aumentando por causa de um negócio chamado IoT.

Agora não basta ter conhecimento de eletrônica. Precisa conhecer sobre Redes, Bancos de Dados, Computação Mobile, Programação WEB, Segurança, etc.

Ou seja, o conhecimento de TI está sendo cada mais valorizado nessa área que vai exigir, cada vez mais, a criação de equipes interdisciplinares que devem conviver em harmonia para todos prosperarem. 

Em tempo: Os primeiros cursos da área de TI ensinavam Assembly e toda teoria dos microprocessadores com seu registradores. No meu tempo eu lembro que abordávamos o Z80 e ficamos apavorados quando o professor falou que iríamos partir para o 8086 de 16 bits! Os tempos mudam Kkkkk!

O que acho legal do Arduino eh a comunidade, curva de aprendizado baixa, muita biblioteca.
Hoje uso Eclipse com o plugin do Sloeber, acho que quem for usuario avancado tem opcao.
Na sequencia passei para PIC, curva de aprendizado maior, nao tem tanta abstracao como Arduino mas acabo tendo de aprender mais, conhecer as minucias, teve um custo financeiro maior para eu comecar com PIC, tive de adquirir um PICkit, um adaptador e com Arduino na epoca basto o Uno e uma protoboard, botao e led, foi muito rapuido e gratificante.
O que gosto mesmo eh da comunidade do Arduino, vcs.

Olá Akira!

Realmente, com uma comunidade tão grande fica mais fácil encontrar ajuda e softwares.

Se precisar de uma library específica, com certeza alguém já fez algo parecido e postou na Internet.

Obrigado por compartilhar suas experiências com o IndustrialShield. Achei fantástico!

Bom dia Srs, 

Já fiz algumas experiências com PIC há quase 20 anos atrás. E nunca mais. 

Já comprei vários modelos de PIC - estão todos guardadinhos na caixa. 

Não dá para comparar a facilidade de uso de um Atmega (Arduino) com um PIC !

Como o meu principal objetivo é criar soluções, aplicações com Microcontroladores, não gosto de perder tempo tentando criar algo que já existe. Adoro quando eu encontro uma biblioteca que resolve o meu problema. 

Antes de criar um projeto, eu vasculho a web para ver se tem algo pronto. E com Arduino, você sempre acha algo pronto ou similar. 

Bom, já vi caldeira operado por contadora, sem CLP, se for uma caldeira com a fabricacao, instalação e vistorias anuais, até um PC 386 com Windows 3.11 pode controlar. Ela deve ter tantas salvaguardas quanto exigidas.

Eu não usaria um arduino pois a placa não atende, mas programar na IDE do Arduino e gravar em uma placa desenvolvido  com ATMEGA328, seria tranquilo 

Essa é a minha ideia tambem Marcelo,

     Normalmente eu uso o arduino UNO ou qualquer outro, exclusivamente pra prototipar, é milhões de vezes mais pratico fazer uma montagem rapida numa protoboard para tirar uma duvida, e upar um rapido codigo pra um arduino UNO e ver os resultados.

     Recentemente sai de férias, passei 11 dias fora de casa, mas a casa se comportou bem, praticamente ninguem sabia que não havia gente em casa, pois como os muros são altos, quem estava do lado de fora só via as coisas acontecendo.

     A primeira coisa é meu sistema de iluminação, ele se responsabiliza por perceber atraves de um LRD quando a luminosidade ambiente é adequada e liga as lampadas externas da casa,  fiz um update e coloquei uma tomada extra, e já pelo segundo ano, os piscas piscas e iluminações de festas de fim de ano ligam automaticamente, e tambem desligam automaticamente, só que por hora,  baseadas em um RTC, com isso as luzes não passam a madrugada ligadas, elas se desligam sempre no horario medio em que vamos dormir.

     A segunda coisa foram as plantas de dentro de casa,  eu criei um micro sistema, minusculo, que cabe em uma caixinha 4x3 ele possui apenas 3 leds e um botão,  ele controla uma valvula soleoide, sendo que escolhi uma torneira nas proximidades, coloquei um TÊ e pus a torneira de volta, na outra extremidade, coloquei, a solenoide, com um regulador e o sistema automatico,  resultado,  11 dias fora e quando voltei plantas lindas e molhadinhas.

    O que deu merda foi meu sistema de irrigação de grande porte,  ele rega 2 ambientes com arvores frutiferas e outro com gramado, como estaria viajando, criei um sensor de vazão para evitar problemas,  o problema é que usei um sensor OPTICO ligado a um sistema de pás que giravam com a água retirada do poço,  resultado,  a água era ferruginosa, e os respingos dela inteferiram no sensor,  conclusão não sei por quantos dias funcionou, mas quando cheguei das férias tava parado,  dai mudei pra um sensor HALL com 2 imãs de neodimio nas pás, e até agora tá 100%.

      Observem, bem, em nenhum dos sistemas foi usada uma placa arduino,  todos foram feitos com placas projetadas e criadas, e todas atendem tão bem as suas funções a ponto de esquecermos que elas estão lá.

       Os exemplos citados são experiencias proprias de vida, e demonstração de como de forma domestica o arduino pode alterar as nossas vidas.

       A diferença que vejo entre um sistema domestico e industrial, quando nos tornamos usuários um pouco mais avançados,  reside muito mais na questão de suporte, do que propriamente outro fator tecnico.

       Entrentando, hoje posso dizer com toda certeza,  o mundo arduino não é o mesmo para quem tá começando a brincar com shields, e alguem avançado que mexe com registradores, projeta suas placas eliminando assim muitos problemas, e é capaz de entender a fundo os principios do que esta lidando, como entender desde corrente elétrica, a diferença entre uma variavel INT e um BOOL.

Caros 

É impressionante como em tecnologia as opiniões sobre essa ou aquela plataforma, linguagem, podem ser tornar alguma coisa parecida com uma religião. É o que tem acontecido com RPI, Arduino.

Um olhar técnico sobre o Arduino nos mostra que estamos falando de um microcontrolador, com um bootloader gravado em uma placa de circuito impresso. Para programar temos a IDE que integra editor, compilador  e a aplicação que faz a gravação do binário gerado pela compilação e linkagem.

Plataformas desse tipo existiam antes do Arduino, e existem muitas dos mais diversos fabricantes, então do ponto de vista tecnológico não temos nada de revolucionário. 

O mérito do Arduino é dispensar o árduo trabalho de configurar o toolchain de desenvolvimento e mesmo programando em C ter que aprender sobre a arquitetura do microcontrolador (registradores, GPIO, etc, etc).

O que eu acho que merece atenção é algo que vale não só para sistemas embarcados mas para desenvolvimento em geral. Se você está desenvolvendo um sistema crítico ou profissional você tem que conhecer muito bem o software que está sendo executado.  A prática comum com Arduino é encontrou a biblioteca e/ou o código que funciona está tudo resolvido. Para prototipagem tudo bem. Me preocupa muito é pegar uma biblioteca desconhecida desenvolver uma aplicação em cima e pronto tenho um produto, que muitas vezes vai atuar em alguma situação crítica que pode inclusive comprometer a segurança de pessoas. 

Voltando para os aspectos técnicos no geral bibliotecas genéricas tem dois tipos de problemas, consomem mais memória e não tem a melhor otimização.

Um tempo atrás montei um experimento com Arduino para demonstrar isso a meus alunos. Peguei o exemplo de blink do Arduino , retirei o delay e verifiquei com um osciloscopio o tempo de chaveamento entre 1 e 0.

Em seguida na IDE do Arduino fiz a mesma implementação do Blink ainda em C porém operando diretamente em cima dos registradores. O resultado como era de se esperar o código binário utilizou bem menos memória e o chaveamento foi muuito mais rápido. Ainda tenho esse código e apresentação se alguém quiser posso disponibilizar. 

Enfim minha opinião é que o Arduino tem todo o mérito de ter acabado com  a fama de que programar microcontroladores é coisa para cientista da Nasa, ter iniciado muita gente em programação, eletrônica. Porém para quem quer ir além da prototipagem rápida estude as arquiteturas, ferramentas, as boas práticas de desenvolvimento de software, certamente você vai ser uma cara que vai se diferenciar no mercado. Pode acreditar que não vais impressionar em uma entrevista apresentando que sabe programar em Arduino.

Valeu senhores, senhoras ou como é mais polido dizer hoje senhorxs!

Até

Marco

 

 

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço