Sou desenvolvedor de software com praticamente nenhum conhecimento em eletrônica, mas quero entrar nisso, pois é relevante para o trabalho que estou realizando (desenvolvimento de sistemas de entretenimento e entretenimento). Eu sou engenheiro de software, não engenheiro eletrônico, portanto, minha formação / experiência tem mais a ver com programação no nível de aplicativos e talvez um pouco de programação de sistemas / redes.
Ouvi falar do Arduino como uma plataforma de projeto flexível e fiquei imaginando que tipos de projetos poderiam ajudar alguém com meu histórico a abrir caminho para a engenharia eletrônica ... começando com a programação do microcontrolador e talvez mexendo com outros tipos de periféricos, como bluetooth , zigbee, wifi, áudio, vídeo, não sei ... talvez um tipo de projeto típico dos engenheiros eletrônicos durante seus cursos.
Em suma, o que estou procurando é um tipo de projeto típico / popular (acadêmico ou outro) que possa ajudar um engenheiro de software a desenvolver um conjunto de habilidades de engenharia eletrônica no nível do software.
fonte
Respostas:
Aqui estão algumas sugestões para projetos que não seriam difíceis de obter para um desenvolvedor de software. Eles podem parecer difíceis, mas sou um grande fã de projetos que estão muito além do meu conjunto de habilidades. Se forem projetos divertidos e atraentes, eles o arrastarão com alegria pelo processo de aprendizado. E lembre-se, estamos todos aqui para ajudar.
Matriz de LED
Este é um projeto totalmente digital e muito divertido (quem não gosta de LEDs). Você precisará de alguns drivers como o ULN2803 e um microcontrolador. Faça com que a matriz conte a hora ou mostre uma imagem. Eu era capaz de mostrar uma imagem de Bjork em uma matriz verde de 16x16.
Plano de espuma estabilizada com giroscópio
Pegue um avião de espuma e dois micro ailerons :
Você também precisará de um giroscópio MEMS com uma saída analógica e alguns OpAmps minúsculos. Misture-os todos juntos para fazer um plano de espuma de borracha estabilizada com giroscópio.
Robô
Todo mundo adora um robô. O melhor de um pequeno robô como esse é que você pode começar com algo extremamente simples (apenas avança) e lentamente adicionar mais e mais funcionalidade (sensores e tomada de decisão), aprendendo o tempo todo.
fonte
Se você já é desenvolvedor de software, a programação do microcontrolador em si não deve ser realmente um desafio, e há pouco de eletrônico nisso. Pelo menos não da maneira que você precisaria lidar com diferentes tipos de componentes e fazer cálculos sobre tensões e correntes para fazer algo funcionar.
Um kit de microcontrolador pode ajudá-lo a obter o controle. Você pode trabalhar com todos os tipos de entradas, digitais e analógicas e saídas.
Experimente o onipresente termostato, por exemplo.
Entradas
Você precisará entender os sensores de temperatura (qualquer que seja o tipo), amplificadores, opamps e talvez transistores, além de capacitores e resistores. Opamps e especialmente transistores são básicos, são usados em todos os circuitos.
Saída
Para acionar um relé, você precisará saber como um transistor funciona como um comutador (essa é a aplicação mais fácil de entender).
As placas de desenvolvimento de microcontroladores costumam ter uma tela nelas, LCD ou LED, ou podem se conectar a um módulo de tela. Embora isso seja útil (por exemplo, para depuração) e divertido, não ajuda a entender a eletrônica. Você precisará criar seu próprio monitor, como uma matriz de LEDs, e aprender a dirigir um monitor multiplexado, tanto do ponto de vista de software quanto de hardware.
Além da placa do microcontrolador, pegue um kit de partida eletrônica , que contém a maioria das peças básicas para fazer circuitos simples. E um bom manual , é claro. A Arte da Eletrônica é imensamente popular aqui, embora a última vez que a vi foi devido a uma atualização.
fonte
Adquira um kit de desenvolvimento PSoC . O PSoC é um microcontrolador que contém blocos digitais e analógicos reconfiguráveis. Basicamente, você pode conectar esquemas digitais e analógicos ao IDE. Esses esquemas são então implementados dentro do chip PSoC.
Você pode jogar com projetos de circuitos digitais e analógicos de acordo com o conteúdo do seu coração e combinar tudo isso com o software escrito no mesmo IDE.
fonte
Proteus é uma excelente plataforma de criação de textos orientada por software. Você pode criar placas e esquemas de PCB usando a maioria, se não todos os MCUs mencionados aqui; E o melhor de tudo, você pode simular seu código-fonte como se estivesse sendo executado no hardware real!
O mais legal desse software é que você pode alterar variáveis como cristais, capacitores, resistores sem precisar soldar, dessoldar, pedir e esperar para eventualmente mexer com proto boards ou escudos. Emula-o perfeito.
Além disso; Você obtém ferramentas virtuais como osciliscópios. Você sabe quanto custa um bom osciliscópio? Uma fortuna! Tudo está incluído em praticamente vários outros recursos e ferramentas virtuais.
Não é gratuito, mas o preço é absolutamente razoável pela quantidade de tempo e frustração que você pode economizar, em vez de mexer com o hardware real.
fonte
Eu acho que tentar aprender tudo só resultará em muita confusão e perda de tempo. IMHO, você deve tentar focar seu interesse: você disse que precisa dele para sistemas de infotainment, certo?
Uma abordagem poderia ser ter uma idéia do que é um desses sistemas:
Uma unidade de processamento (provavelmente um microcontrolador ou um computador simples);
Alguns drivers para a tela;
Interface de E / S para interação do usuário;
Interfaces de comunicação (rede, interface com outros dispositivos ...)
Qualquer um desses subdomínios é um sistema completo que pode ser estudado e projetado como um projeto. Alguns deles também podem ser divididos em mais subdomínios em um nível mais baixo de abstração e até o nível do componente.
Então, minha sugestão é quebrar essa arquitetura complexa em blocos e tentar criar circuitos simples (talvez a partir de drivers de LED), mas isso pode ser inserido no plano maior. Você terá a motivação para fazer isso, pois fará parte do trabalho final e da maneira como aprenderá sobre eletrônica.
Apenas cuide de estudar e entender o que você está fazendo, em vez de confiar em esquemas pré-fabricados e regras gerais genéricas.
fonte
Eu estava no mesmo problema. E, finalmente, aprendi que não há uma maneira direta de aprender eletrônica. Um diploma universitário pode ajudá-lo.
Caso contrário, você pode tentar os seguintes livros:
Passo 1.
Passo 2.
Juntamente com o software NI Multisim .
fonte
Como desenvolvedor de software, você está entre as duas principais plataformas disponíveis.
PHP ou .NET?
Se você é .NET, posso sugerir fortemente o .NET MicroFramework IDE e o NetDuino
Existem muitos outros hardwares disponíveis, mas sugiro este porque seu preço é razoável e é muito parecido com o Arduino e muitas outras placas de prototipagem que ajudarão a familiarizar vários kits.
Nem o .NET nem o PHP não têm conexão real com a programação incorporada, mas a sintaxe do PHP está muito próxima do
C
que é bom saber. .NET, é bom ficar em um ambiente familiar e você também pode obter certificações para isso com o Microsoft Learning.Outra plataforma que eu sugeriria é o Atmels AVR XMega, que é basicamente o arduino, mas muito mais novo e mais capaz.
As partes importantes sobre esses dois caras é que os ambientes de desenvolvimento são GRATUITOS! Sim, a Microsoft oferece o Visual Studio gratuito para Micro Framework e o Atmel possui o AVR Studio 5 (baseado no Visual Studio a partir da versão 5)
Você também precisa entender os recursos de cada kit de desenvolvimento.
É baseado em chips Atmega, mas eles usam chips de baixa velocidade de clock (8mhz, 16mhz), mas são capazes de executar vários bits e interrupções. É um excelente ponto de partida para o aprendizado de engenharia elétrica, pois possui IDE gratuito e uma comunidade enorme com toneladas de código e bibliotecas. Se você aprender a partir daqui, será mais fácil mudar para outros chips baseados no AVR em termos de sintaxe e portabilidade de código.
É muito limitado ao que pode ser feito, por exemplo, não espere retransmitir dados de vídeo por meio de um servidor micro web interno para a Internet. Esses MCUs simplesmente não conseguem lidar com os dados e a quantidade de coisas a fazer ao mesmo tempo, mas depois que você chegar a esse nível, será bom avançar para os AVRs .NET ou 32Bit.
Esses caras podem lidar com LCDs, vídeo, servidor web, sem fio e um monte de coisas dentro dele. Eles também começam a ir muito mais rápido na velocidade de processamento. Porém, antes de começar a analisar esses itens, você precisa perceber que existem vários produtos que também possuem funções específicas. Como toque, comunicação sem fio, potência ultra baixa, alguns são misturados e combinados e isso precisa de um processo adequado de pesquisa e desenvolvimento por trás do uso esses meninos maus.
Tenha muito cuidado com eles,
Eles oferecem fantásticos chips líderes de mercado que são incríveis quando você lê sobre eles. Infelizmente, não há IDE gratuito e eles custam milhares de dólares em taxas de licença. Embora alguns produtos, como o MSP430, tenham um IDE gratuito, muitas coisas são limítrofes e pouco claras. Além disso, aprender as bibliotecas para alguns chips de TI é um pesadelo absoluto. Mas é um nicho de mercado e você pode obter um bom salário aqui.
Existem muitos devkits por aí, só contei sobre algumas das minhas próprias experiências que vêm de uma Certificação .NET. Eu realmente comecei com um Mega256 do Arduino.
Hoje, estou fabricando minhas próprias PCBs de 1,5 cm x 1,5 cm, que funcionam com células de moedas por até 2 anos, usando o incrível SystemOnChips da TI. Mas demorou muito tempo e paciência para chegar lá e ainda sinto que não sei nada sobre sistemas embarcados ...
Boa sorte :-)
fonte
Sua pergunta é bastante ampla e haverá muitas boas possibilidades. Se você está mais focado no nível mais alto de como fazer um computador pequeno interagir com coisas físicas, sugiro que você olhe algo como o kit Lego Mindstorms . Com isso, você pode criar e programar robôs. Isso estará em um alto nível de plug and play, vários sensores etc.
Há também um nível mais básico importante de engenharia elétrica, onde um EE "verdadeiro" projetaria e construiria sensores. O uso de um computador de placa única como um Arduino ou um Netduino e uma placa de ensaio onde você conecta vários componentes como resistores, LEDs etc. na placa de ensaio para construir circuitos estará mais próximo desse nível mais básico. Neste ponto, você estará lidando com perguntas como "que resistor de valor devo colocar em série com o LED para limitar a corrente para que meu led e microcontrolador não fumem?".
Com o kit Lego, você simplesmente conecta os componentes e eles cuidam de torná-lo à prova de idiotas.
fonte
Eu sugeriria focar na diferença entre o software escrito para o PC e o firmware escrito para aplicativos incorporados. Aprimore o C. Com o linux embutido se tornando tão popular, a diferença entre um engenheiro de firmware e um desenvolvedor de software está diminuindo rapidamente. Passe algum tempo olhando para um driver incorporado de código aberto.
Eu questionaria um pouco o desejo de se tornar mais como um EE, pois as duas disciplinas são bem distintas. Sim, existem muitas sobreposições, mas concentre-se no lado do motorista e não fique atolado nos detalhes da eletrônica.
fonte
primeiro de tudo é muito bom se você não é do ramo da eletrônica, não vai realmente projetar chips, não é?
mas se você for aprender eletrônica, sugiro que você compreenda o básico primeiro, como resistência, diodos, transistores etc. um kit de hobby eletrônico do radioshack ou qualquer outro fornecedor faria. Em seguida, nos microcontroladores, o Arduino faria realmente simples, mas eu aconselho que você escolha algo que não tenha sido facilitado, o Arduino é realmente fácil e não representa um grande desafio para o usuário. Comece pelos controladores AVR, PIC ou 8051 Micro, compre um microcontrolador, um codifique book e srart começando com o programa LED piscando (o "Hello World" no Departamento de Eletrônica) e, como você verá, em pouco tempo você usaria teclados de matriz e monitores de sete segmentos para aprender um pouco mais sobre o básico. trabalho, interface de seus dispositivos com outros CIs e redes de sensores, aquele relacionado ao seu trabalho.sua diretoria de desenvolvimento já possui alguns desses recursos e, se não, você sempre pode comprar sheilds ou breakad borads disponíveis com facilidade, então tudo depende de você ...
Também aconselho que você verifique com sua empresa a plataforma que está usando, isso lhe dará uma orientação sobre o microcontrolador para aprender e, como você já é um programador, isso deve ser muito fácil para você e sempre faz projetos de hobby como o Robot e matriz de LED, entre outros, isso manteria sua mente no assunto que você não ficará entediado!
fonte