Zastosowanie technik informatycznych i metod numerycznych w elektronice


Opis kursu ETD6071

Przygotowanie praktyczne do realizacji prac projektowych w elektronice z zastosowaniem podstawowych narzędzi numerycznych i komputerowych z zakresu wspomagania typowych prac inżynierskich

Prowadzący:

  • dr hab. inż. Artur Wymysłowski, prof. PWr
  • dr inż. Krzysztof Urbański

Przebieg kursu:

  • demonstracja i omówienie wzorcowych projektów
  • wybór lub przydział zadań projektowych
  • samodzielna realizacja projektu w oparciu o konsultacje z prowadzącym
  • zaliczenie w postaci projektu, sprawozdania lub raportu końcowego

Przydatne materiały

  1. Grupy realizujące projekty silnikowe: do zabawy przygotowałem płytkę uruchomieniową scalonego sterownika silników bipolarnych L9935, więcej informacji pod adresem http://kju.wemif.net/stepper.

Planowana forma zajęć

Przewidujemy otwarte zajęcia, prowadzone przez 2 prowadzących jednocześnie — niezależnie od tego, do kogo formalnie się zapisaliście, będziecie mogli konsultować projekty zarówno ze mną jak i z prof. Wymysłowskim. Ponieważ zajęcia mają formę konsultacji, a tematyka projektów będzie różnorodna, to podobnie jak na językach programowania będzie można przyjeżdżać do M6 wcześniej lub później. Wszystko oczywiście w granicach rozsądku, tzn. nie 36 osób jednocześnie w jednym terminie. Warto też, aby większość z was uczestniczyła we wspólnej części zajęć, czyli prezentacjach postępów prac.

Projekty będziecie wykonywać w 2- lub ew. 3-osobowych grupach. Zajęcia odbywają się co 2 tygodnie (7 lub 8 spotkań w semestrze), ale w przypadku niektórych projektów możliwe jest ich wykonanie w całości w domu. W takich przypadkach wymagane będzie jedynie przedstawienie postępów prac w formie kilku 5-minutowych wystąpień. Tym z was, którzy wybiorą projekty oparte w większości na sprzęcie (oprogramowanie mikrokontrolerów, projekty układów sterowanych mikroprocesorowo, układy związane z modelowaniem i pomiarami rozkładu temperatur w próbkach) udostępnione zostaną zasoby laboratoriów. W miarę możliwości zachęcamy też do korzystania z OpenLab, które znajduje się w budynku obok.

Spotkania będą się składały z krótkich prezentacji przed całą grupą waszych postępów realizacji projektów oraz indywidualnych konsultacji z prowadzącymi zajęcia.
Każda grupa będzie miała od kilku do kilkunastu minut na omówienie tego, co zostało zrobione i przedstawienie pomysłów na dalszą realizację projektu. Jest to też czas na dyskusję z prowadzącymi zajęcia i resztą grupy, jak rozwiązać pojawiające się problemy. W przyszłej pracy zawodowej niejednokrotnie będziecie uczestniczyć w podobnych zebraniach zespołów realizujących wspólne bądź całkiem osobne projekty. Cenne jest świeże spojrzenie i uwagi tych, którzy nie są bezpośrednio zaangażowani w wasz projekt. Dla wszystkich będzie to okazja zdobycia wiedzy szerszej niż tylko "jak zaliczyć własny projekt".

Takie okresowe prezentacje postępów mają was zmobilizować do mniej lub bardziej systematycznej pracy w trakcie semestru, aby nie odkładać wszystkiego na ostatnią noc.

Jako bazę sprzętową dla projektów procesorowych proponuję STM8S, który kosztuje zaledwie 5 euro. Oczywiście nie musicie ich kupować, te zestawy będą dostępne na miejscu. Jeszcze więcej da się zrobić z użyciemNE64, część z was wykonała takie płytki przy okazji projektów z JP.

Dużo ciekawych możliwości oferują zestawy i moduły do łączności bezprzewodowej, których mamy całkiem sporo. To nie jest kompletna lista, układów jest dużo więcej, począwszy od zegarka z komunikacją radiową, poprzez zdalne sterowanie drogą radiową, Zigbee, GPRS+GSM, Bluetooth i wiele innych. To okazja dla tych, których zainteresowała ta tematyka na Językach programowania, a nie mieli czasu, odwagi bądź odpowiedniego sprzętu do wykonania takiego właśnie projektu.

Ci z was, którzy nadal lubią zabawki, mamy zestaw LEGO NXT. Można spróbować swoich sił jako konstruktor/programista/modelarz. Jeśli ktoś chce wykonać ambitniejszy projekt, to jest dostępna platforma z 2 silnikami, a samodzielnie trzeba będzie dodać sterowanie mikroprocesorowe.

Może warto pokusić się o oprogramowanie CNC? To niebezpieczna zabawka, ale za to efektowna. Ze względów bezpieczeństwa tylko dwie grupy mogą wybrać ten projekt. Nagrodą jest możliwość wyfrezowania samodzielnie przez was zaprojektowanego dzieła w trwałym materiale lub wypalenie laserem w notatkach z ukochanej analizy kilkunastu tysięcy dziurek ułożonych w malowniczy wzorek.

Cennym doświadczeniem jest umiejętność projektowania PCB. W odróżnieniu od kursu KPW nie ma ograniczeń co do rodzaju płytek, mogą to być zarówno PCB zawierające jeden element (używane np. w testach parametrów termomechanicznych), jak też bardziej skomplikowane układy peryferyjne i mikroprocesorowe. Ważna jest tu nie tyle pełna symulacja obwodu elektrycznego (to bardzo złożone zagadnienie, wymagające profesjonalnych narzędzi), co poznanie ogólnych zasad projektowania dobrej jakości obwodów drukowanych, odpornych na zakłócenia, łatwych w wykonaniu i montażu, niezawodnych.

Więcej propozycji tematów znajdziecie niżej na tej stronie. Oprócz części elektronicznej i informatycznej kursu mamy jeszcze zagadnienia związane z modelowaniem numerycznym. Są one może mniej widowiskowe, ale za to łatwiej znaleźć dobrze płatną pracę w tej dziedzinie. Coś w sam raz dla tych z was, którym nie jest obca fizyka i analiza, a nie chcą skończyć jako oderwani nieco od rzeczywistości teoretycy. Matematycy, fizycy, elektronicy, mechanicy oraz ekipy programistów od wielu lat zajmują się doskonaleniem narzędzi do projektowania i modelowania numerycznego. Wszystko po to, aby PRZED skonstruowaniem kosztownych prototypów odpowiedzieć na pytanie: czy to ma szansę działać?

Wasze własne propozycje tematów

Realizując ten kurs możecie sami zgłaszać własne propozycje projektów (podobnie jak np. na zajęciach OpenLab).

Oto przykład zadania, które planujemy przedstawić na zajęciach „od A do Z”:
Mamy rezystor R = 6.8 Ω przylutowany do kawałka laminatu. Dane są wszystkie potrzebne wymiary. Przez rezystor płynie prąd 350 mA (typowy prąd diody LED dużej mocy). Do jakiej temperatury rozgrzeje się ten element? A jaka będzie temperatura laminatu? Co by było gdyby przez ten rezystor płynął prąd przemienny 1 kHz? a 0.5 Hz? Jakie zmiany w rozkładzie temperatur i skuteczności odprowadzania ciepła spowoduje druga warstwa miedzi pod spodem (tzn. gdy użyjemy laminatu dwustronnego)? Po jakim czasie od włączenia zasilania rezystor zaświeci własnym światłem? Jakie musiałyby być wymiary pól lutowniczych/szerokości ścieżek/rozmiar obudowy rezystora, aby nie przekroczyć krytycznej wartości temperatury? Jakie siły i naprężenia występują wskutek niedopasowania współczynników rozszerzalności temperaturowej użytych materiałów?

Na te, i na wiele innych pytań można odpowiedzieć ZANIM zaprojektujecie i wykonacie płytkę drukowaną. Ciekawym doświadczeniem jest możliwość praktycznej obserwacji wyników tego i podobnych eksperymentówprzy użyciu kamery termowizyjnej lub matrycy czujników temperatury. Można dzięki temu naocznie się przekonać, na ile model numeryczny pasuje do rzeczywistości.


ZTIMNE a praca dyplomowa inżynierska

„Kurs PRACA DYPLOMOWA INŻYNIERSKA rozpoczyna się z początkiem października i musi się zakończyć w ciągu dziesięciu tygodni. Praca dyplomowa inżynierska powinna zawierać rozwiązanie konkretnego problemu inżynierskiego i charakteryzować się:

  • wykazaniem umiejętności rozwiązywania zadań inżynierskich z wykorzystaniem wiedzy ogólnej i specjalistycznej,
  • wykazaniem wiedzy i umiejętności w zakresie wykorzystania współczesnych narzędzi działania inżynierskiego, w tym technik komputerowych.

Może ona dotyczyć:

  • przeprowadzenia eksperymentów komputerowych - symulacje, modelowanie procesów fizycznych i chemicznych, pracy przyrządów półprzewodnikowych,
  • zaprojektowania i wykonania układów i przyrządów elektronicznych,
  • wykonania i opracowania serii pomiarów,
  • napisania programu komputerowego np. automatyzującego stanowiska pomiarowe.”

Jak łatwo zauważycie, dobrze rozpoczęty projekt z kursu ZTIMNE można dokończyć i zaliczyć w niedalekiej przyszłości właśnie jako pracę inżynierską. Daje to wam możliwość zaoszczędzenia czasu w trakcie realizacji pracy inżynierskiej: duża część pracy już zostanie wykonana jako zaliczenie kursu ZTIMNE. Możecie też od razu wybrać ambitniejszy projekt do realizacji w czasie 2 semestrów, pierwszą część projektu zaliczacie jakoZTIMNE, drugą jako pracę inżynierską.
Tematy prac dyplomowych inżynierskich będę zgłaszał właśnie jako kontynuację projektów z kursu ZTIMNE.


Czego się można nauczyć na kursie?

Nie został przewidziany osobny wykład, dlatego bezpośrednio na zajęciach projektowych zostaną przedstawione przekrojowo te zagadnienia, które uznaliśmy za interesujące i przydatne.

Kurs ma charakter interdyscyplinarny i główne jego przesłanie brzmi: "użycie w praktyce wiedzy, którą do tej pory zdobyliście na innych zajęciach". Jest to połączenie zagadnień z zakresu matematyki, fizyki, mechaniki, termodynamiki przy udziale technik informatycznych oraz komputera jako podstawowego narzędzia pracy.

Większość projektów będzie polegała na zrozumieniu:

  • Co mierzymy? (temperaturę, przyspieszenie, przemieszczenie, naprężenia, siłę, pole magnetyczne, rezystancję).
  • Jak mierzymy? (na czym polega dana metoda pomiarowa, jakich wyników i dokładności możemy się spodziewać, jakie czujniki wybrać).
  • Czym mierzymy? (jak działa dany czujnik, jak odebrać z niego dane i przetworzyć na postać cyfrową, jak taki czujnik zamodelować numerycznie).
  • Po co mierzymy? (jak gromadzić, przetwarzać, interpretować i graficznie przedstawiać wyniki).

Większości urządzeń (takich jak np. kamera termowizyjna, zrywarka, karty akwizycji danych, zestawy mikroprocesorowe, bezprzewodowe moduły komunikacyjne, generatory funkcyjne, oscyloskopy, klocki LEGO) będziecie mogli użyć na miejscu, aby w praktyce zweryfikować funkcjonowanie opracowanych przez was modeli, programów lub urządzeń.

Możliwa jest zarówno praca na miejscu w laboratoriach WZTAE, jak również praca w domowym zaciszu na własnym komputerze.

Cały program kursu obejmuje 7 lub 8 spotkań na ul. Długiej, co w semestrze letnim ma nawet swoje zalety: możliwa jest np. praca w plenerze dla tych, którzy wybiorą projekty związane z systemami telemetrycznymi i bezprzewodową transmisją danych.

Dla części z was ten kurs jest naturalną kontynuacją projektów rozpoczętych w ramach kursu „Języki programowania”, tym razem jednak nacisk nie jest położony na programowanie w C++ czy Javie, lecz na praktyczne użycie komputera jako narzędzia. Można zatem śmiało korzystać z gotowych aplikacji i przykładowych kodów dostępnych w sieci (w granicach prawa oczywiście). Tematyka poroponowanych projektów jest na tyle obszerna, że programowanie nie jest warunkiem koniecznymm zaliczenia kursu. Macie wykazać się umiejętnością stosowania komputera w szeroko pojętej elektronice.

Zakres zagadnień projektowych

  • Gromadzenie i analiza danych z urządzeń pomiarowych, wizualizacja i interpretacja wyników eksperymentalnych
  • Modelowanie numeryczne wybranych zagadnień z fizyki z wykorzystaniem programów komputerowych
  • Grafika i animacja komputerowa w wizualizacji modeli trójwymiarowych (3D)
  • Zastosowanie baz danych z dostępem sieciowym do gromadzenia wyników pomiarów pochodzących z rozproszonej sieci czujników przewodowych i bezprzewodowych
  • Konfiguracja i użycie wybranych usług sieciowych do wymiany danych. Mechanizmy autoryzacji i szyfrowania danych
  • Wykonanie prostych aplikacji z graficznym interfejsem użytkownika przy użyciu obiektowych języków programowania do obsługi urządzeń pomiarowych
  • Projekt, analiza numeryczna i testy praktyczne wybranych obwodów elektronicznych zarówno analogowych jak i cyfrowych

Przykładowe zadania projektowe

Powyższe odnośniki to nie zadania, które macie samodzielnie wykonać, ale przykłady narzędzi, którymi dysponujemy i których możecie używać we własnych projektach.

Opracowanie modelu numerycznego wybranego zagadnienia z fizyki z wykorzystaniem metod modelowania komputerowego

Celem projektu jest zastosowanie wybranych programów komputerowych do symulacji typowych problemów z fizyki, np. dynamiki ruchu z wykorzystaniem metod modelowania komputerowego. W tym celu planuje się zastosowanie takich programów jak np. ANSYS, Phun, czy bibliotek języka skryptowego Python.

Opracowanie programu komputerowego z wykorzystaniem graficznego interfejsu użytkownika

Celem projektu jest opracowanie własnego programu komputerowego z zastosowaniem obiektowego języka programowania (C#, Java, Python) oraz wykorzystanie istniejących bibliotek do tworzenia graficznych interfejsów użytkownika.

Opracowanie programu komputerowego do zdalnego sterowania urządzeniem oraz sieciowej transmisji danych pomiarowych

Celem projektu będzie konfiguracja wybranych usług sieciowych oraz opracowanie prostego programu komputerowego do komunikacji z użyciem TCP oraz UDP. Wymiana danych będzie się odbywać z gotowymi urządzeniami takimi jak oscyloskop cyfrowy, opracowane w Zakładzie urządzenia pomiarowe, oraz czujniki i układy wykonawcze z interfejsem Ethernet.

Opracowanie i wykonanie elektronicznego układu analogowego lub cyfrowego

Celem projektu jest opracowanie wybranego projektu układu elektronicznego analogowego lub cyfrowego, a następnie jego analiza numeryczna oraz realizacja praktyczna w postaci płytki obwodu drukowanego. W tym celu planuje się skorzystanie z takich programów komputerowych jak np. Spice, itp oraz wyposażenia laboratorium montażowego do jego realizacji praktycznej.