Czy inżynierowie elektrycy używają mikrokontrolerów? [Zamknięte]

14

Zawsze lubiłem programować, a ostatnio zainteresowałem się elektroniką i programowaniem mikrokontrolerów. To bardzo zabawne, ale zastanawiam się, czy uczę się czegoś przydatnego, co może pomóc w znalezieniu pracy, gdy się zestarzeję. Zastanawiam się, czy inżynierowie elektrycy używają mikrokontrolerów.

Wiem, że prace, w których musisz doprowadzić moc do różnych części domu, prawdopodobnie nie byłyby, ale być może taka praca:

Twoje obowiązki:

  • Zaprojektuj i opracuj nowe produkty do defibrylatora. Główny nacisk zostanie położony na projektowanie nowych produktów i bieżące wsparcie produktów w dziedzinie projektowania analogowego i cyfrowego.
  • Modeluj obwody analogowe przy użyciu różnych narzędzi symulacyjnych, takich jak PSPICE i MATLAB.
  • Twórz prototypy i potwierdzaj wykonalność, funkcjonalność i wydajność projektu.
  • Dokumentuj wszystkie fazy projektu, w tym wymagania, specyfikacje, plany, przeglądy, procedury testowe i raporty z testów.
  • Wspieraj istniejące produkty. Zbadaj i ustal pierwotną przyczynę problemów związanych z produktem w produkcji i w terenie. Rozwiązywanie problemów z systemami, płytkami drukowanymi, kablami i oprogramowaniem układowym. Użyj sprzętu testowego do analizy i rozwiązywania problemów.
  • Identyfikuj, oceniaj i rekomenduj kluczowych dostawców na podstawie technicznych zdolności elektrycznych, doświadczenia, historii i certyfikatów.
  • Ułatwienie i utrzymywanie stałej komunikacji z kluczowymi dostawcami i wewnętrznymi interesariuszami podczas opracowywania projektu.
  • Reprezentowanie grupy deweloperskiej EE jako kierownika zespołu technicznego przy projektach. Obejmowałoby to dostarczanie rozwiązań technicznych, a także planowanie i śledzenie projektów.
  • Dokumentuj projekt do produkcji (tj. Rysunki, schematy, eksperymenty, zmiany, wyniki testów, dane, układ PCB itp.).
  • Współpracuj z zespołami międzyfunkcyjnymi, w tym: inżynierem mechanikiem, inżynierem oprogramowania, aplikacjami klinicznymi, produktami edukacyjnymi, marketingiem, inżynierią wsparcia, jakością i przepisami oraz łańcuchem dostaw. Zespoły są doświadczone, ale stosunkowo małe, a członkowie pełnią wiele ról programistycznych.

Czy ludzie, którzy to robią, używają mikrokontrolerów lub czegoś podobnego?

IronApe
źródło
5
@VladimirCravero - podczas gdy arduino nie jest mikrokontrolerem, jest płytą programistyczną mikrokontrolera, z lub bez oferowanych bibliotek i IDE.
Chris Stratton
3
Nazwa Arduino wskazuje, że mikrokontroler ma jakiś moduł ładujący, który pozwala programować go z komputera. To nie biblioteki ani IDE sprawiają, że jest to Arduino, to program ładujący. Dzięki właściwemu mikrokontrolerowi atmel Arduino staje się dobrze wspieraną platformą mikrokontrolera
Funkyguy
5
@Vladimir Cravero. Podczas gdy Arduino nie jest mikrokontrolerem. Wiem, że EE używają płyt deweloperskich Arduino lub tanich kart PIC jako „pękających” płyt mikrokontrolerów. Nano zapewnia w szczególności szybkie, tanie i łatwe sposoby wykonywania niektórych zadań, na przykład zbudowanie systemu testowego, aby upewnić się, że „prawdziwy” produkt lub komponent działa.
żaglowiec
5
Drugi komentarz żaglowca. Użyłem arduino w celach zawodowych. Zrobiłem z nimi aparaty testowe do nadzorowania długoterminowego / spalania w testach. Umieściłem je w profesjonalnie wyglądających aluminiowych skrzynkach i wysłałem na strony klientów. Nie robiłem z nimi masowej produkcji, ale kiedy potrzebowałem czegoś do mojej aplikacji i potrzebowałem szybko, zwróciłem się do Arduino Mega. Działa jak mistrz. Nie musiałem kręcić płytką drukowaną, aby osiągnąć swoje cele. Co więcej, przy małych ilościach taniej jest używać płyty prefabrykowanej niż zakręcać własną płytą uC.
Nick
4
Ogólne spostrzeżenia, nie wskazując palcami tutaj ... Czy to tylko ja, czy ktoś inny zauważa, że ​​EE spędzały cały swój czas na narzekaniu na to, jak słabo jest rozwijane oprogramowanie Arduino (biblioteki, IDE itp.), Faktycznie go ulepszając, masz bibliotekę klasy przemysłowej, która działa na wielu MCU i jest bardziej wydajna i łatwiejsza niż pisanie własnego kodu dla niektórych funkcji? Pewnie, jest kilka rzeczy, które są dziwne ( booleanvs. bool), ale myślę, że niektóre z tych rzeczy można usunąć w pochodnej ...
Anonimowy pingwin

Odpowiedzi:

26

P: Czy inżynierowie elektrycy używają mikrokontrolerów?

Tak. Absolutnie. Od prostych zabawek po złożone procesy produkcyjne i roboty. To nie jest umiejętność, która cię zrani. Dowiedz się o nich jak najwięcej.

Wróg maszyny państwowej
źródło
1
podobnie jak w przypadku całej elektrotechniki, zależy to od specyfikacji tego, co robisz.
Jeff Wurz
kto wie, może w tym procesie stworzysz własną pracę. Niektóre egzoszkielety i rzeczy zaczynają używać Arduino zamiast PIC. Ponadto, wyostrza inne umiejętności, takie jak robotyka, jak wspomniano, oraz obwody i podstawowe umiejętności matematyczne dla nich.
Andrew Scott Evans,
2
Uzgodniony @JeffWurz. Ale posiadanie go w przyborniku na czas, nigdy nie jest niczym złym. Wiele osób korzysta z komputera, kiedy wzmacniacz operacyjny działałby jeszcze lepiej! Tak więc w fazie projektowania masz 100% racji. Jest wielu, którzy „nad-inżynierują” obwody. Bob Pease powiedział: „Moim ulubionym językiem programowania jest język lutowniczy!”
Enemy Of the State Machine
1
@EnemyOftheStateMachine Solder może być zdecydowanie przydatny, ale dla mnie w profesjonalnym środowisku zawsze preferuję rozwiązanie oparte na gotowych częściach. Zwykle dla mnie jest to sterownik PLC, ale niekiedy sterownik jest szczególnie odpowiedni do tego zadania. Podstawową korzyścią jest łatwość wymiany - coś, co staje się oczywiste, gdy umiera jedyne w swoim rodzaju rozwiązanie lutownicze i jesteś zmuszony albo spędzić dzień na diagnostyce na poziomie płyty, albo dwa dni na odbudowie nowego. Jeśli umiera sterownik uC lub PLC, wymień go, przeprogramuj i natychmiast zacznij zarabiać.
J ...
12

To konkretne zadanie może nie, ale produkt prawdopodobnie zawiera mikrokontroler i być może będzie kontrolowany przez mocniejszy system wbudowany.

Pamiętaj, że wspomina o „rozwiązywaniu problemów” (ale nie pisaniu) „oprogramowaniu układowym”.

Możliwe jest również, że ten opis stanowiska został napisany przez kogoś (na przykład pracownika działu kadr), który tak naprawdę nie rozumie procesu inżynieryjnego.

W większych firmach ludzie specjalizują się, a Ty możesz mieć osobę analogiczną wykonującą projektowanie i sterowanie wysokonapięciowe oraz osobę zajmującą się oprogramowaniem sprzętowym wykonującą oprogramowanie sterujące niskiego poziomu, a być może cały zespół opracowuje GUI i kontroler panelu dotykowego. W przypadku regulowanego urządzenia o znaczeniu krytycznym dla bezpieczeństwa, takiego jak defibrylator, prawdopodobnie miałbyś inżyniera systemowego, który określa specyfikacje, które należy spełnić, oraz interfejsy między obszarami odpowiedzialności.

Spehro Pefhany
źródło
8

W przypadku wolniejszych prędkości, niskich kosztów, mniejszych pakietów, wyższej niezawodności (z powodu mniejszej liczby połączeń) i łatwiejszych w utrzymaniu rozwiązań mikrokontroler jest często rozwiązaniem goto. Nawet jeśli rozejrzysz się po tej stronie internetowej, zobaczysz wiele pytań, w których ktoś jest zbyt skomplikowany, niektóre osoby automatycznie zadają plakat „dlaczego nie używasz mikrokontrolera)?

symbol zastępczy
źródło
7

Definicja EE jest dość elastyczna. Jeśli masz dyplom EE na dużej uczelni, możesz mieć doświadczenie w programowaniu i mikrokontrolerach. Wiele programów EE nie wymaga kursów programowania. To jest powód, dla którego wielu inżynierów decyduje się na inżynierię komputerową, a nie EE, ponieważ przekraczają granicę między projektowaniem sprzętu a oprogramowaniem.

Mikrokontrolery mogą zapewniać niższe koszty i krótsze cykle projektowe dla tej samej funkcjonalności dla wielu projektów. Jest kilka rzeczy, które należy zrobić w świecie analogowym, a niektóre muszą być wykonane w cyfrowej wersji, ale ogólnie rzecz biorąc, jeśli chodzi o mikrokontrolery, decyzja nie polega na tym, czy można to zrobić, ale czy można to zrobić lepiej, taniej , szybciej lub oferują więcej funkcji i wydajności niż konstrukcja bez mikrokontrolera.

EE, który nie jest zaznajomiony z mikrokontrolerami i nie korzysta z nich, ograniczy się, ale jeśli mają dużą głębokość w świecie analogowym lub wolą pracować w dużych zespołach, w których mikro rzeczy mogą być wykonywane przez innych, zrobią to bardzo dobrze, gdzie potrzebna jest ich wiedza i koncentracja.

Adam Davis
źródło
Mój dyplom mówi: „licencjat elektrotechniki”, a następnie w następnym wierszu „Opcja komputerowa”.
Nick
5

Wiele EE używa mikrokontrolerów, ale jest wiele takich, które nie specjalizują się w projektowaniu analogowym, inżynierii RF, energetyce itp.

Sądzę jednak, że większość EE, które obecnie projektują cyfrowo, również włącza mikrokontrolery do swoich projektów, tylko dlatego, że w większości przypadków oszczędza to dużo sprzętu i czyni projekt bardziej elastycznym. (Innym sposobem na zminimalizowanie części i łatwiejszą zmianę projektu jest użycie układów FPGA, które wymagają innego rodzaju programowania o nazwie VHDL.) Jak zobaczymy poniżej, to, czy będą oni mocno zaangażowani w programowanie tych mirokontrolerów, będzie zależało od wielkości firmy i jej organizacji.

W idealnym przypadku EE, które uzyskało tytuł licencjata w EE, odbyło także co najmniej kilka kursów programowania. Najprawdopodobniej jeden lub więcej z nich zawiera C, który jest używany w większości programów wbudowanych w mikrokontrolery. Jeśli nie, stosunkowo łatwo jest samodzielnie wybrać C, choć jeśli nigdy nie programowałeś, będziesz musiał pokonać pewne przeszkody.

Niemniej jednak IMO jest znacznie łatwiejsze dla EE do nauki programowania niż dla programisty do nauki pracy ze sprzętem. W tym drugim przypadku nie sądzę, że większość kierunków CS byłaby w stanie samodzielnie uczyć się projektowania cyfrowego lub analogowego bez żadnych formalnych kursów, ale powinny one być w stanie nauczyć się czytać schematy, korzystać z multimetru i oscyloskopu, a być może analizator logiki.

Jak wspomnieli inni, jeśli ktoś wie, że jest zainteresowany wbudowanym programowaniem i projektowaniem, dyplom CE może być dobrym wyborem. Wątpię, czy dostaniesz tyle podstawowej teorii EE, ile dostaniesz tylko specjalizację EE, na przykład mniejszy nacisk zostanie położony na projektowanie analogowe. Kiedy dostałem mój BSEE, stopnie CE jeszcze nie istniały, więc poszedłem naprzód i uzyskałem stopień MSCS w nocy, pracując nad pierwszą pracą (i pozwól firmie zapłacić za moje czesne i książki).

Zaskakujące jest to, że praca z urządzeniami osadzonymi wymaga sporo obwodów analogowych, aby połączyć się ze światem zewnętrznym. Angażuje się także w projektowanie zasilaczy. Jeden z produktów, z którymi byłem zaangażowany, miał 9 różnych szyn napięciowych (-6,1, 1,8, 2,5, 3,3, 3,6, 4,1, 5,0, 9,6 i 12), z których kilka stanowiło wyświetlacz LCD.

Jeśli chodzi o hipotetyczny opis stanowiska, w mniejszych firmach, takich jak start-up, jako samotny inżynier wykonałem wszystkie te role dla jednego projektu - napisałem specyfikację, zaprojektowałem układ cyfrowy i analogowy, stworzyłem zestawienie komponentów (zestawienie materiałów), zamówiłem części od Digi-Key i Mouser, ułożyłem PCB z Orłem, zamówiłem PCB, debugowałem sprzęt po powrocie z domu montażowego, napisałem oprogramowanie w C, aby dalej przetestować płytę, a następnie napisałem oprogramowanie produkcyjne w C. Napisałem również niezbędną dokumentację dla FDA (było to urządzenie medyczne) i zapewniłem wsparcie dla tej dziedziny. Więc w tym przypadku bardzo przydatne było dla mnie posiadanie doświadczenia w EE i CS.

Ale w wielu firmach role te mogą być podzielone między kilku inżynierów - najprawdopodobniej projekt sprzętu wykonałby jeden lub więcej inżynierów, układ PCB przez innego, a programowanie i testy przez trzecią grupę. W tym drugim przypadku, jak wspomniano powyżej, programista, aby przetestować swoje oprogramowanie, musiałby mieć podstawowe uziemienie w elektronice. Ale projektant sprzętu, poza tym, że musi wiedzieć, jak włączyć mikrokontroler do projektu (co nie jest trywialnym zadaniem - większość arkuszy danych mikrokontrolera ma setki stron długości), może w ogóle nie zostać zaangażowanym w oprogramowanie. Jednak na początku projektowania

tcrosley
źródło
2
Jako programista pracujący w automatyce przemysłowej odkryłem, że EE, które rozumieją oprogramowanie na pewnym poziomie, są znacznie łatwiejsze do komunikowania się niż ci, którzy działają wyłącznie w dziedzinie obwodów. Podobnie staram się nauczyć wystarczająco dużo o podstawowych układach elektrycznych, aby przynajmniej zdiagnozować proste problemy z okablowaniem bez konieczności wywoływania EE. Inżynieria bardzo często jest interdyscyplinarnym wysiłkiem, dlatego posiadanie wystarczającego poziomu technicznego nakładania się, aby skutecznie dyskutować i współpracować, gdy przychodzi czas na integrację, ma dużą wartość.
Dan Bryant
3

Tak EE używają mikrokontrolerów.

Rasa ludzka wytwarza ponad 20 000 000 000 rocznie [1], około 40 razy więcej niż mikroprocesory. Ktoś projektuje, testuje, debuguje i ulepsza systemy i produkty przy użyciu tych MCU; wiele z nich jest wykorzystywanych w produktach zaprojektowanych przez zespoły, w tym EE.

AFAICT w Wielkiej Brytanii trendem jest, aby EE stawali się programistami oprogramowania wbudowanego lub też szkolili się, aby być programistami oprogramowania wbudowanego. Więc i tak możesz wyprzedzić ten trend EE. Możesz rozważyć specjalizację rozwoju wbudowanego, jeśli patrzysz na studia lub poszukujesz pracy rekrutującej „Embedded Software Developers”, aby lepiej zrozumieć, jakie umiejętności są przydatne.

Co najmniej jedna duża, znana brytyjska firma powiedziała, że ​​cykl życia produktu będzie poprawiony dzięki większej liczbie, nawet lepszych, wbudowanych programistów. Podejrzewam, że dotyczy to wielu innych firm na całym świecie.

[1] IIRC były postacią na 2011 rok. Spróbuję znaleźć moje oryginalne źródło. Bardzo trudno było uzyskać aktualne numery, i to było najbardziej aktualne, jakie znalazłem. Myślę, że była to wartość z badania branżowego przeprowadzonego przez jednego z analityków rynkowych. W takim przypadku może być ono przybliżone, może być uzyskane na podstawie, powiedzmy, najlepszych 10 producentów, czytania i interpretacji ich rocznych raportów oraz skalowania dla ogólnych szacunków przychodów sektora.

Ewentualnie można go uzyskać, patrząc na produkty dostarczane w kilku sektorach i dokonując ekstrapolacji. Na przykład, AFAIK, każdy telefon komórkowy zawiera co najmniej jeden MCU, aparaty cyfrowe mają jeden, odtwarzacze muzyczne mają jeden, telewizory mają jeden, gry pomocy ręcznej mają jeden, routery bezprzewodowe mają jeden, samochody średnio 17 (IIRC) itp. jeśli istnieje wielkość wolumenów produktów w dużych sektorach, wówczas można ją „triangulować” w ten sposób.

Wierzę, że ST zażądał ponad MCU 1B ARM lub MCU 2B, i nie są one największe, i jest wielu dużych graczy, więc myślę, że wartość jest teraz prawdopodobnie realistyczna. Wydaje mi się, że wydaje mi się, że niektóre informacje prasowe dla poszczególnych producentów twierdzą, że ponad 1B części rocznie, więc uważam, że jest to prawdopodobne.

żaglowiec
źródło
Czy masz źródło tego numeru? 20 000 000 000?
Funkyguy
@Funkyguy - miałem źródło, więc pozwól mi się rozejrzeć. Przesunąłem swój komentarz do mojej odpowiedzi, aby móc go zaktualizować, jeśli znajdę odniesienie.
żaglowiec
Interesuje mnie również twoje źródło. Moje najnowsze numery woluminów mikrokontrolera pochodzą ze źródeł z 2006 roku.
Davidcary
Widzę informację prasową Microchip z 2011 roku, że „ Microchip Technology dostarcza 10 miliardów mikrokontrolerów PIC ... Microchip dostarczył ten 10 miliardowy mikrokontroler ... około 10 miesięcy po dostarczeniu dziewięciu miliardów”. więc w 2011 roku jest to ponad 1 B części. Tak więc w sumie 20 B w 2011 r. u wszystkich producentów jest prawdopodobne.
davidcary
3

Tak!

Programowanie i interakcja z mikrokontrolerami może być jednym z głównych obowiązków inżyniera elektryka.

Mikrokontrolery stanowią w pewnym sensie środek dla inżynierów i programistów. Stworzenie odpowiedniego oprogramowania wymaga nie tylko dobrej znajomości programowania, ale także praktycznej znajomości elektroniki, która będzie współdziałać z programem w mikrokontrolerze.

Opisany przez ciebie opis stanowiska nie dotyczy konkretnie projektu. Brzmi bardziej, jakby postawili cię w pozycji testowania i rozwiązywania problemów. Jest to jednak zadanie, które wykonałby inżynier elektryk.

Funkyguy
źródło
3
Istnieje również wiele EE, które nigdy nie mają do czynienia z mikrokontrolerem. Zależy to od ścieżki kariery, pracy, branży itp.
ACD
To prawda, chociaż wydaje się, że staje się to coraz rzadsze. Chociaż nie jestem największym fanem Arduino, wiele EE, którzy byli w terenie od dłuższego czasu, wybierają go, ponieważ jest bardzo prosty w użyciu.
Funkyguy
Pracuję jako EE od około 5 lat i chociaż widziałem mikrokontrolery na 3 różnych stanowiskach, nigdy nie były one jednym z moich głównych obowiązków ani nawet blisko. Mam również przyjaciół, którzy pracują jako inżynierowie energii i nigdy nie dotykają płytki drukowanej, a tym bardziej mikro. Chciałem tylko zauważyć, że twoje drugie zdanie było bardzo mylące i że dla niektórych może to być główna odpowiedzialność, ale nie obejmuje wszystkich.
ACD
1
@ACD Rozumiem twój punkt widzenia. To prawda, że ​​jako projektant zasilania nigdy nie dotykam mikrokontrolerów, tylko w wolnym czasie. Zredagowałem ten post jako „może być”, a nie tylko prosto
Funkyguy
1

Tak i tak! Wykonałem pracę opisaną przez twoją ofertę (prawie na pewno nie dla tego samego klienta) i wiele podobnych. Lepiej uwierz, że defibrylator ma w sobie mikrokomputer (pedanci: Jestem całkowicie świadomy różnicy; po prostu nie przywiązuję do tego większego znaczenia w tym kontekście).

Jestem SWE z jedną nogą w EE; tak samo wiele jest EE z stopą w SWE. Usiądź gdziekolwiek w tym spektrum, które Ci odpowiada. Każdy produkt mądrzejszy niż młotek (a może niektóre z nich!) Ma w sobie programowalny kontroler. Może to być MCU, mikrokomputer lub płyta główna z pełnym pulpitem, w zależności od tego, co / ile trzeba zrobić. Niektóre przyrządy laboratoryjne, takie jak HPLC, które zarządzają dużą ilością danych i redukują je oraz muszą przedstawiać użytkownikowi skomplikowane GUI (z których każde może wymagać dużej mocy obliczeniowej) należałyby do tej drugiej kategorii. Przenośny defibrylator wykorzystywany przez załogę ambulansu lub oddział ratunkowy spadłby gdzieś pośrodku. Ciąg świątecznych świateł może mieć najtańszą, najmniejszą jednostkę MCU, jeśli w ogóle ją ma.

Twoje umiejętności programistyczne nie zmarnują się, jeśli tak chcesz spędzić karierę. Pamiętaj jednak, że chociaż pełny zestaw EE, SWE i dowolnych umiejętności xxxE będzie bardzo przydatny, prawie na pewno specjalizujesz się - lub dostaniesz w pudełku :-( - jeden z nich jako podstawowy.

Mam stopień inżyniera zarządzania (ponieważ to było najbliższe (wskazówka: nie blisko!) Dopasowanie do SWE, jakie miałem wtedy dostępne), wiedząc dobrze, że ssę skały w zarządzaniu ludźmi, nienawidzę tego i krzyczę od każdej próby umieszczenia mnie na krześle menedżera. Ale! (i zawsze jest „ale”, prawda?) BS w EM przyszło z co najmniej 101-poziomowym kursem z fizyki, mechaniki, chemii, matematyki (znacznie więcej niż 101, oczywiście), programowania ( z których kilka uczyłem, uczyłem lub po prostu pieprzyłem), elektroniką, obliczeniami analogowymi i nie tylko. Przydałby mi się również kilka kursów z nauk przyrodniczych, gdyby były oferowane, choć nie jestem pewien, czy ja lub uniwersytet to wtedy wiedzieli.

Ale sedno - i wreszcie moja uwaga - jest to, że edukacja o szerokim spektrum może zabrać cię w wiele miejsc, w których wysoce wyspecjalizowany może nie być (i tak na odwrót). Moje 101 poziomy pozwoliły mi poznać to, czego nie wiedziałem, ale czego potrzebowałem, i zadać użyteczne pytania genialnym specjalistom, których pracę ja i moi współpracownicy włączaliśmy w coraz bardziej inteligentne, a czasem wcześniej niewyobrażalne produkty .

JRobert
źródło
0

Zwykle nauka mikrokontrolera nie jest wystarczająca i jeden mikrokontroler nie nadaje się do wszystkich zastosowań (przemysłowych, dydaktycznych, ...). Nauka mikrokontrolera może wymagać długiego czasu, a jego mikrokontroler może nie generować po kilku latach. to nie jest podstawa EE. ale ta umiejętność jest niezbędna dla każdego inżyniera elektronicznego.

muzyk
źródło