Wenn Sie sich für diesen Kurs anmelden, werden Sie auch für diese Spezialisierung angemeldet.
Lernen Sie neue Konzepte von Branchenexperten
Gewinnen Sie ein Grundverständnis bestimmter Themen oder Tools
Erwerben Sie berufsrelevante Kompetenzen durch praktische Projekte
Erwerben Sie ein Berufszertifikat zur Vorlage
In diesem Kurs gibt es 5 Module
Dieser Kurs kann auch als ECEA 5318 im Rahmen des Master of Science in Electrical Engineering der CU Boulder angerechnet werden. Der Schwerpunkt des letzten Kurses liegt auf der praktischen Entwicklung einer Anwendung, die maschinelles Sehen in Echtzeit und mehrere Echtzeitdienste verwendet, um den internen Zustand von Linux mit einem externen Taktgeber durch Beobachtung zu synchronisieren. Die tatsächliche Leistung wird mit der theoretischen verglichen und analysiert, um Jitter bei der Zeitplanung zu ermitteln und eine eventuelle Anhäufung von Latenzzeiten abzumildern. Die Überprüfung des Abschlussprojekts umfasst den Vergleich von Systemzeitstempelprotokollen mit einem großen Satz von Bildern, die in ein Video kodiert werden können. Der Abschlussbericht wird von Fachkollegen begutachtet, und die aufgenommenen Bilder und Videos werden für eine schriftliche Bewertung hochgeladen.
Lernergebnisse: ● Ergebnis 1: Zerlegen Sie ein Problem und eine Reihe grundlegender Echtzeitanforderungen in Softwaremodule und Linux POSIX-Echtzeit-Threads ● Ergebnis 2: Analysieren Sie Dienste in Bezug auf C (Ausführungszeit), T (Anforderungszeitraum) und D (Fristen für die Fertigstellung), um die Durchführbarkeit und den Spielraum für die Erfüllung der Anforderungen zu ermitteln ● Ergebnis 3: Entwerfen und konstruieren Sie eine Lösung für ein natives Linux-System, das mit einer Webcam ausgestattet ist, um die Systemsynchronisation unter Verwendung der maschinellen Bildverarbeitung zu überprüfen und zu demonstrieren Dieser Kurs umfasst spezifische Hardware- und Softwareanforderungen. Bitte lesen Sie die FAQ unten für vollständige Details.
Dieses Modul bietet Hintergrundinformationen zum RTES-Projekt, einschließlich des Konzepts eines "visuellen Synchronoms", bei dem eine Kamera zur Synchronisierung der Zeit zwischen einer externen Uhr und einem eingebetteten Computer verwendet wird. Das Projekt erfordert eine Synchronisierung mit 1 Hz und 10 Hz, wobei die Echtzeitdienste Kamerabilder erfassen, stabile (nicht verwackelte) Bilder auswählen und diese in ein Flash-Dateisystem schreiben müssen. Das Projekt erfordert ein gutes Verständnis von RMA, Echtzeit-Scheduling und Designprinzipien für Echtzeitsysteme mit mehreren Diensten.
Grundlegende Makefile-Kenntnisse am Beispiel•10 Minuten
Druckbare RTES-Projekt-Rubrik für Peer Reviews•10 Minuten
Mit "sudo" ausführen und/oder Dateiberechtigungen prüfen•10 Minuten
Weitere Software Design Methoden und Notationen•60 Minuten
Verwendung einer Linux-RAM-Disk und/oder eines Software-RAID•10 Minuten
1 Aufgabe•Insgesamt 30 Minuten
Grundlagen von Echtzeitsystemen•30 Minuten
1 peer review•Insgesamt 360 Minuten
Peer Review der ersten Dienstleistungen, RMA und Zeitdiagramme•360 Minuten
1 Diskussionsthema•Insgesamt 10 Minuten
Stellen Sie sich vor•10 Minuten
Fertigstellung des RTES-Projekts und vorläufige Funktionstests
Modul 2•9 Stunden abzuschließen
Moduldetails
In diesem Modul werden verschiedene Designansätze für das RTES-Projekt besprochen, darunter der "Shotgun"-Start, bei dem die Ticks der Uhr einmal beim Start erkannt werden, der Ansatz der kontinuierlichen Tick-Erkennung bei voller Synchronität und verschiedene Optionen für die Implementierung. RTES-Projektdesigner müssen sich für eine Kamera-Schnittstelle entscheiden, z.B. eine V4L2 (Video for Linux 2)-Schnittstelle zum UVC (Universal Video Controller)-Treiber oder eine OpenCV-Schnittstelle zu einer Kamera.
Das ist alles enthalten
7 Videos4 Lektüren1 Aufgabe1 peer review
Infos zu Modulinhalt anzeigen
7 Videos•Insgesamt 98 Minuten
Einfaches Design, das nicht funktioniert und warum•26 Minuten
Besseres Designbeispiel, aber nicht fehlertolerant•13 Minuten
Einfache Bildaufnahme von 1800 Bildern in einem Vorgang•13 Minuten
Sequenzierung von RT-Diensten mit einem Software-Intervalltimer•11 Minuten
4 Lektüren•Insgesamt 40 Minuten
Request for Proposal - Ziele und Vorgaben für das Projekt•10 Minuten
RTES Project Starter Code herunterladen, erstellen und überprüfen•10 Minuten
Hinweise zur Verwendung von Uhren für das RTES-Projekt•10 Minuten
Ein paar wichtige Hinweise zum Jetson Nano•10 Minuten
1 Aufgabe•Insgesamt 30 Minuten
Projektentwurf, Implementierung und Funktionsprüfung•30 Minuten
1 peer review•Insgesamt 360 Minuten
Code-Durchsicht des Projektstarter-Codes•360 Minuten
Timing-Analyse - Vergleich der tatsächlichen mit den vorhergesagten Servicezeit-Ereignissen
Modul 3•10 Stunden abzuschließen
Moduldetails
Um sicherzustellen, dass ein Echtzeitdesign ordnungsgemäß implementiert ist, muss die Timing-Analyse auf der Grundlage von Systemprotokollierung und Tracing verwendet werden, um das tatsächliche Timing im Vergleich zum theoretischen RMA zu überprüfen. Dieses Modul bietet einen Überblick über die Methoden und schlägt die effizientesten Methoden zum Debuggen und Verifizieren des Timings des RTES-Projekts vor. Das Modul beinhaltet eine 1-Hz-Peer-Review von Design und Code zur Unterstützung bei der Verbesserung des RTES-Projekts für die externe Taktsynchronisierung unter Verwendung von Kamerabildern mit einer tickenden Analoguhr.
Analyse: Methoden der Multi-Service-Timing-Überprüfung•8 Minuten
Übersicht über häufige Fehler•14 Minuten
1 Lektüre•Insgesamt 10 Minuten
Die häufigsten Fehler bei RTES-Projekten - eine Liste, die Sie beachten sollten•10 Minuten
1 Programmieraufgabe•Insgesamt 180 Minuten
Endgültiges Projekt Betrieb bei 1 Hz•180 Minuten
1 peer review•Insgesamt 360 Minuten
Peer Review von 1 Hz Monotonie und störungsfreiem Betrieb•360 Minuten
Methoden zur Systemüberprüfung und -validierung des RTES-Projekts
Modul 4•9 Stunden abzuschließen
Moduldetails
Dieses Modul deckt Methoden der Ablaufverfolgung und Profilerstellung für die gesamte RTES-Projektplattform ab, einschließlich Netzwerken, Systemprofilen und Methoden zur Verfolgung von Echtzeitdiensten im Besonderen. Das Modul umfasst eine 10-Hz-Peer-Review von Design und Code zur Unterstützung der Verbesserung des RTES-Projekts für die externe Taktsynchronisation mit einer digitalen Stoppuhr bei dieser höheren Rate im Vergleich zu 1 Hz.
Das ist alles enthalten
3 Videos1 Programmieraufgabe1 peer review
Infos zu Modulinhalt anzeigen
3 Videos•Insgesamt 20 Minuten
Verwendung von Sysprof und Kernel Shark unter Linux•9 Minuten
Wireshark Netzwerk-Transport-Tracing mit Linux•4 Minuten
Code-Durchlauf: Demonstration von Syslog für die Timing-Analyse•7 Minuten
1 Programmieraufgabe•Insgesamt 180 Minuten
Abschlussprojekt Betrieb bei 10 Hz•180 Minuten
1 peer review•Insgesamt 360 Minuten
10 Hz Design-Walkthrough•360 Minuten
Überprüfung und Präsentation des Abschlussprojekts
Modul 5•11 Stunden abzuschließen
Moduldetails
Das gesamte RTES-Projekt sollte für dieses Modul abgeschlossen sein. Die Studenten können sich Tipps und Beispiele ansehen, wie sie ihre Entwurfsmaterialien, ihre RMA und den Code für die Prüfung vorbereiten. Das Verfahren zur Überprüfung und Validierung des Entwurfs auf der Grundlage der RTES-Projektrubrik wird hier ebenfalls definiert.
Das ist alles enthalten
3 Videos1 Lektüre1 Aufgabe1 peer review
Infos zu Modulinhalt anzeigen
3 Videos•Insgesamt 61 Minuten
Beispiel für eine Peer Review Design Demonstration - V4L Beispiel•22 Minuten
Beispiel Peer Review Design Walk-through - OpenCV Beispiel•25 Minuten
Mitnahme- und Schlussnotizen für den Kurs•14 Minuten
1 Lektüre•Insgesamt 10 Minuten
Weitere kreative RTES-Projektbeispiele•10 Minuten
1 Aufgabe•Insgesamt 30 Minuten
Projekt und abschließendes Take-Away Wichtige Konzepte•30 Minuten
1 peer review•Insgesamt 540 Minuten
Präsentation des endgültigen Designs und der RTES-Lösung•540 Minuten
Erwerben Sie ein Karrierezertifikat.
Fügen Sie dieses Zeugnis Ihrem LinkedIn-Profil, Lebenslauf oder CV hinzu. Teilen Sie sie in Social Media und in Ihrer Leistungsbeurteilung.
Auf einen Abschluss hinarbeiten
Dieses Kurs ist Teil des/der folgenden Studiengangs/Studiengänge, die von University of Colorado Boulderangeboten werden. Wenn Sie zugelassen werden und sich immatrikulieren, können Ihre abgeschlossenen Kurse auf Ihren Studienabschluss angerechnet werden und Ihre Fortschritte können mit Ihnen übertragen werden.¹
Mögliche Abschüsse anzeigen
Auf einen Abschluss hinarbeiten
Dieses Kurs ist Teil des/der folgenden Studiengangs/Studiengänge, die von University of Colorado Boulderangeboten werden. Wenn Sie zugelassen werden und sich immatrikulieren, können Ihre abgeschlossenen Kurse auf Ihren Studienabschluss angerechnet werden und Ihre Fortschritte können mit Ihnen übertragen werden.¹
¹Erfolgreiche Bewerbung und Einschreibung sind erforderlich. Es gelten die Zulassungsbedingungen. Jede Einrichtung legt die Anzahl der Credits fest, die durch die Absolvierung dieser Inhalte anerkannt werden und auf die Abschlussanforderungen angerechnet werden können, wobei bereits vorhandene Credits berücksichtigt werden. Klicken Sie auf einen bestimmten Kurs, um weitere Informationen zu erhalten.
OK
Dozent
Lehrkraftbewertungen
Lehrkraftbewertungen
Wir haben alle Lernenden um Feedback zu unseren Dozenten gebeten, ausgehend von der Qualität ihres Unterrichtsstils.
Die CU Boulder ist eine dynamische Gemeinschaft von Gelehrten und Lernenden auf einem der spektakulärsten College-Campus des Landes. AS eine von 34 öffentlichen US-Institutionen in der angesehenen Association of American Universities (AAU), haben wir eine stolze Tradition der akademischen Exzellenz, mit fünf Nobelpreisträgern und mehr als 50 Mitglieder der renommierten akademischen Akademien.
Was sind die Hardware- und Softwareanforderungen für diesen Kurs?
Systemvoraussetzungen
● Ein Windows- oder Mac-Computer für den Fernzugriff auf den Raspberry Pi
● Heimnetzwerk mit Internetzugang und einem Router, über den der Raspberry Pi im lokalen Netzwerk (Wi-Fi oder Ethernet) erreichbar ist
● SSH auf dem Raspberry Pi aktiviert (erforderlich)
● VNC auf dem Raspberry Pi aktiviert (optional, für Remote-Desktop-Zugriff)
Hardware-Anforderungen
Für diese Spezialisierung benötigen Sie ein Heimlabor, das auf einer unterstützten Einbettungs-Linux-Plattform basiert. Die folgende Konfiguration ist erforderlich und wird für alle Kursaktivitäten getestet.
Erforderliche Hardware
● Eingebettete Linux-Hardwareplattform - empfohlen: Raspberry Pi 3B+ (Raspberry Pi Familie oder gleichwertig)
● MicroSD-Karte (vorinstalliert mit NOOBS oder Raspberry Pi OS)
● Kühlkörper
● Gehäuse
● 5V / 2.5A Stromversorgung mit Schalter
● HDMI-Kabel
● UVC-kompatible USB-Kamera (USB 2.0 oder besser)
Alternative Hardware-Konfigurationen
Obwohl der Raspberry Pi 3B+ die offiziell unterstützte Plattform ist, können Sie andere Linux-fähige Einbettungsplattformen auf eigenes Risiko verwenden:
● Raspberry Pi 4 (bietet USB 3.0, 2+ GB RAM und Gigabit Ethernet)
jetson Nano, DE10-SoC oder ähnliche Boards (nur für fortgeschrittene Benutzer; Selbstunterstützung erforderlich)
Hinweis: Der gesamte in dieser Spezialisierung enthaltene Code wurde auf dem Raspberry Pi 3B+ mit Raspberry Pi OS (früher Raspbian) getestet und verifiziert.
Software-Anforderungen
Die Fähigkeit, eines der folgenden Fernzugriffstools auf Ihrem Computer zu installieren und zu verwenden:
● MobaXterm (empfohlen für Windows)
● PuTTY
● VNC-Betrachter
Wann werde ich Zugang zu den Vorlesungen und Aufgaben haben?
Um Zugang zu den Kursmaterialien und Aufgaben zu erhalten und um ein Zertifikat zu erwerben, müssen Sie die Zertifikatserfahrung erwerben, wenn Sie sich für einen Kurs anmelden. Sie können stattdessen eine kostenlose Testversion ausprobieren oder finanzielle Unterstützung beantragen. Der Kurs kann stattdessen die Option "Vollständiger Kurs, kein Zertifikat" anbieten. Mit dieser Option können Sie alle Kursmaterialien einsehen, die erforderlichen Bewertungen abgeben und eine Abschlussnote erhalten. Dies bedeutet auch, dass Sie kein Zertifikat erwerben können.
Was bekomme ich, wenn ich mich für diese Specialization einschreibe?
Wenn Sie sich für den Kurs einschreiben, erhalten Sie Zugang zu allen Kursen der Spezialisierung, und Sie erhalten ein Zertifikat, wenn Sie die Arbeit abgeschlossen haben. Ihr elektronisches Zertifikat wird Ihrer Seite "Leistungen" hinzugefügt - von dort aus können Sie Ihr Zertifikat ausdrucken oder Ihrem LinkedIn-Profil hinzufügen.
Ist finanzielle Hilfe verfügbar?
Ja. Für ausgewählte Lernprogramme können Sie finanzielle Unterstützung oder ein Stipendium beantragen, wenn Sie die Einschreibegebühr nicht aufbringen können. Wenn für das von Ihnen gewählte Lernprogramm eine finanzielle Unterstützung oder ein Stipendium verfügbar ist, finden Sie auf der Beschreibungsseite einen Link zur Beantragung.