Dúvida: com o que programar: Um microcontrolador ou um CLP? - Programação de microcontroladores - Clube do Hardware
Dúvida: com o que programar: Um microcontrolador ou um CLP?
Por Hadassa, 13 de outubro de 2015 em Programação de microcontroladores
Hadassa 0
desde 13/10/2015
Estou fazendo um projeto, e venho tendo muitas dúvidas sobre ele. Espero que me ajudem com essas minhas questões!
Com o que é mais fácil de programar? Um microcontrolador ou um CLP? qual é mais barato?
Além desses controladores, existem outros mais fáceis? Eu posso programar qualquer coisa com um MCCO e um CLP?
Estou perdida com isso, porque sou novata em eletrônica e ainda estou aprendendo..
Isadora Ferraz 3.022
Eu (eu) prefiro mc ao clp. Penso ser este 2º mais pro ambiente industrial pois tem entradas/saídas preparadas para máquinas, eletromecânicos e afins. Por outro lado sua linguagem de programação tende a ser menos difícil de aprender do que o asm dos mc´s. Mas pra isso, compiladores de linguagem de alto nível facilitam sua vida nos mc´s. Eu (eu) prefiro a de nível médio c.
Mc (em teoria) você pode programar qualquer coisa sim pois há muitos a escolher. Tende a ser mais barato pois pode escolher o melhor custo-beneficio. Já clp penso ser mais limitado, pode ser mais caro e com poucas escolhas (só um conceito teórico pois nunca mexi com clp diretamente.. só dei uma olhadela na linguagem lada mas meio que quis vomitar... kk)
Um caminho pra quem ainda está na mamadeira é o odioso arduíno que infelizmente minha ética me impede de falar mal desta porcaria. Tenta a sorte
Muito obrigada, vou tentar ver essas linguagens que você me disse, e é verdade sobre o arduíno, não gosto também kk mas infelizmente sou hyper novata nisso tudo kk então obrigada! vou usar um microcontrolador e como você disse, tentar a sorte!
aphawk 3.325
17.252 posts
Isadora, fiquei curioso agora.... exatamente o quê que voce odeia em um Arduíno, e que lhe parece ser inclusive um problema de ética ?
Um conceito open que revolucionou o ensino no mudo inteiro ( claro que aqui no Brasil andamos sempre na contramão, só ensinam Pic, Pic, Pic.... ) , foi ao Espaço em um satélite como projeto de formatura de uma das melhores Falculdade de Engenharia da Alemanha, e possui a maior base ativa de usuários contribuindo com milhares de projetos, e todos com o código fonte publicado, usando microprocessadores baratos e poderosos, e cujos projetistas receberam dezenas de prêmios de excelência de design, como pode causar ódio a alguém ??????
Eu admiro o conceito, admiro a constante atualização, e uso ele como plataforma de testes antes de desenvolver um hardware específico. Se fizer alguma besteira e queimar, compro outro na esquina por um valor irrisório para o poder da plaquinha, e problema resolvido !
Paulo como 'plataforma de lançamento' ele pode ter algum valor sim (como no caso da amiga). Mas por gentileza querida não se apegue demais a ele algo como dar-lhe exclusividade por toda sua vida profissional. Como dica, se você colocar no seu curriculum que sabe programar arduíno, pode até mesmo ter um efeito contrário na avaliação de uma empresa séria. Sugiro até mesmo nem mencioná-lo na entrevista... bom pelo menos se for na minha empresa...kk
Ou seja, o acho muito 'infantil' (tô nem aí com crianças no espaço)
Bom de fato a minha "birra" não é com o hw mas com o sw que não dá muita bola pro âmago da coisa. E o gozado é que não gosto de asm, não entendo nada de tcpip, usb, wifi e afins e quero tudo mastigado também.. vá entender kk
Mas são 'pré-conceitos' temporários. Nada me impede de algum dia tentar fazer algo com esta mrd (caso algum cliente exija)
ok, expliquei mas não justifiquei e acho que nem me autoentendi...
Sucessos e boa sorte!
Entendí o seu ponto.
A Ide é um excelente começo, mas é só isso. O correto é que depois de se dominar a linguagem nativa da IDE, aprender a programar em uma linguagem mais séria, como o C ou o Asm.
Mas não posso deixar de observar que para um iniciante é muito mais simples programar o hardware interno com os comandos prontinhos. Fica bem mais fácil de se concluir os primeiros projetos, quando o aprendizado é mais "complicado" .
O hardware é muito bom. Poderoso, simples de se usar, com interface USB nativa, e quando se domina ele, pode-se até reprogramar os dois microcontroladores existentes numa placa do Arduino ( pois é, pouca gente sabe disso ... ) para que trabalhem juntos em um processo, fazendo com que o mais simples vire um tipo de co-processador, podendo se comunicarem em alta velocidade.
Já ví vários projetos onde o microcontrolador mais simples foi programado como gerador de vídeo VGA, e o microcontrolador principal cuida do resto do programa com uma performance muito boa.
Da mesma maneira que voce colocou, eu também uso apenas o hardware do Arduíno para desenvoilvimento do protótipo. Programando em Basic e Asm ao mesmo tempo, facilita muito qualquer projeto por mais complicado que seja; depois, com tudo funcionando, aí sim parto para fazer uma placa dedicada.
Mas corrigindo uma coisa : não são "crianças" no espaço ... foi uma pesquisa muito séria, em acordo com a ESA, projeto feito por mais de uma centena de formandos em Engenharia Eletrônica, usando mais de uma dezena de Arduínos , e todos podendo ter seu programa atualizado diretamente daqui da Terra, modificando as possíveis pesquisas feitas. Interessante notar que todos os trabalhos de conclusão de curso daquele ano foram feitos em conjunto, eu não conhecí nada semelhante, e sinto até inveja por não poder estar lá com eles !
A essa iniciativa, seguiu-se a ideia do ARDUSAT, que está ficando cada vez mais interessante.
Enfim, quem souber usar esse "brinquedo" , pode ir muito longe, só não pode se prender a paradigmas, tem de sempre estar evoluindo !
Agradeço paulao. Se não tivesse corrigido acho que os amigos leitores pensariam que era expressão literal e ia começar a chover criança a qualquer momento.. kk
É isso aí amigo. Ao trabalhar com p&d (é um privilegiado), que é o paraíso dos eletro-recem-formados, este treco se torna uma baita mão na roda. Mas sabemos que é este é um campo limitado e não é pra qualquer um, principalmente no br. Portanto, cá no campo de batalha onde uma boa parte dos leitores vão cair um dia, penso haver mais necessidade de outros tipos de conhecimentos dentre eles até do próprio originador do tópico - clp. Este pode ser um diferencial razoável numa avaliação de curriculum (pra mim seria). Conhecimento de clp tende a ter mais utilidade aqui em 'baixo'. Já o arduíno, é mais em 'cima' mesmo. Ou seja o buraco de mão de obra é mais em baixo
(Registre-se ... obviamente de vista pessoal e absolutamente não deve ser considerado para definir seu rumo profissional hein caro leitor(a)!!)
Agora sério... como será que conseguiram colocar um terra no circuito lá no espaço? Ahh talvez tivessem levado num vaso de flor ou algo do gênero ... (Géntê!! é brincadeira hein! não é terra literal... é sideral.... aff... que engraçado)
Seja qual ramo escolher, vos desejo sucessos amigos!
Eu nem sei em que que um recém-formado trabalha hoje em dia .... as empresas estão fechando e comprando tudo pronto de fora ...... e desenvolvimento também está sendo feito a um custo baixíssimo na china por empresas especializadas ..... E também acho que um diferencial é saber trabalhar com PLC , do mesmo jeito que saber programar em ASM. difícil essa escolha !
Eu sempre digo para escolherem uma área que gostem, pois afinal trabalhar sem gostar só se sustenta se o pagamento for muito bom !
Eu imaginei algo sobre o terra .... já pensou o comprimento do fio terra nesse caso ????
Moley 19
Penso que todo o desenvolvedor de firmware deva conhecer bem de ASM, pois te da uma visão mais ampla de como funciona a coisa, facilitando a vida.
Por exemplo, nos CLP também é possível utilizar interrupções, watchdog, ULA e seus bits de status, registradores específicos etc, e acredito que muitos programadores de CLP não conheçam tais funções.
Eu começaria por Arduino/CLP, poiso hardware e software ja estão prontinhos, dependendo de uma simples firmware, e depois de familiarizado partiria para ASM dos mC para um conhecimento mais afundo do hardware, saber na raiz o que é um registrador, bit, byte, nibble, word, clock, processamento, serial, paralelo, conversores, comparadores etc.
@Moley,
Hoje consegui fazer funcionar o meu Visualizador I2C, que usa ASM para capturar o protocolo I2C até 400 Khz, mostrando na tela inclusive os Ack/Nack. Tive de estudar os detalhes do I2C, e para trabalhar sem erro a 400 Khz, só mesmo com Asm.
A base é o Bascom ( velho Basic kkkkk ) , e com um pouco de ASM tiro leite de pedra com ele. Vou publicar esse projetinho este fim de semana, no tópico destacado de Projetos com AVR, agora já tenho um hardware básico usando o display mais barato possível, que já serve de osciloscópio digital, analizador lógico, frequencîmetro, e agora mostra tudo do bus I2C. Falta só a parte de visualizador SPI e a de serial comum.
Como voce disse no início de seu post, isso só está sendo possível pelo domínio do funcionamento do hardware, sem o qual não tem utilidade saber programar em ASM.
Quem souber isso, também pode usar o PLC de maneira muito mais completa, pois o PLC nada mais é que um microcontrolador em um ambiente mais "robusto" de hardware para suportar ambientes e sinais industriais.
Eu também acho um Arduíno a melhor opção atual para iniciar um aprendizado. Depois, para poder realizar projetos de temporização crítica, aprenderia o ASM, e praticaria o "mix" dentro de um programa do Arduíno, isso ensina muito sobre stacks e interrupções, e quem souber bem como iso funciona sempre vai se destacar em relação aos demais, que saem hoje "idiotizados por linguagens de alto nível" de suas escolas....