{"id":227,"date":"2026-02-26T02:20:03","date_gmt":"2026-02-26T02:20:03","guid":{"rendered":"https:\/\/learningfactorybox.com\/?page_id=227"},"modified":"2026-07-15T12:34:56","modified_gmt":"2026-07-15T12:34:56","slug":"coding-challenges","status":"publish","type":"page","link":"https:\/\/learningfactorybox.com\/de\/coding-challenges\/","title":{"rendered":"Programmier-Challenges"},"content":{"rendered":"<h1 class=\"wp-block-heading\">Programmier Challenges<\/h1>\n\n\n\n<div class=\"wp-block-group is-layout-flow wp-block-group-is-layout-flow\">\n<p class=\"wp-block-paragraph translation-block\">Im Folgenden sind einige Beispiel-Aufgaben f\u00fcr das Programmieren der <strong>FactoryBox<\/strong>.<br> Sie beginnen mit Grundlagen in der Arbeit mit dem ESP32 und Arduino um dann komplexere Sensor-Integrationen und weitere Herausforderungen einzubinden.<\/p>\n\n\n\n<p class=\"has-base-color has-custom-aalen-purple-background-color has-text-color has-background has-link-color wp-elements-1 wp-block-paragraph translation-block\" style=\"border-top-left-radius:15px;border-top-right-radius:15px;border-bottom-left-radius:15px;border-bottom-right-radius:15px\">Solltest Du beim bearbeiten stecken bleiben oder Dich unsicher in der Verwendung von PlatformIO f\u00fchlen, findest du im <a href=\"https:\/\/learningfactorybox.com\/de\/teaching-material\/\" data-type=\"page\" data-id=\"161\" target=\"_self\">Lern-Guide<\/a> Antworten.<\/p>\n\n\n\n<p class=\"has-custom-color-3-color has-custom-uo-a-yellow-background-color has-text-color has-background has-link-color wp-elements-2 wp-block-paragraph translation-block\" style=\"border-top-left-radius:15px;border-top-right-radius:15px;border-bottom-left-radius:15px;border-bottom-right-radius:15px\">Kurzabriss gef\u00e4llig, wie die FactoryBox einzurichten ist? Schau Dir die  <a href=\"https:\/\/learningfactorybox.com\/de\/teaching-material\/#checklists\" data-type=\"link\" data-id=\"https:\/\/learningfactorybox.com\/teaching-material\/#checklists\" target=\"_blank\" rel=\"noreferrer noopener\">Checklisten<\/a> an!<\/p>\n\n\n\n<p class=\"wp-block-paragraph translation-block\">Wir empfehlen Dir, die Challenges in der Reihenfolge ihrer Schwierigkeits-Level durchzuarbeiten. <br> Die Reihenfolge der Tasks innerhab der Levels ist jedoch frei w\u00e4hlbar.<\/p>\n\n\n\n<div class=\"wp-block-group is-layout-flow wp-block-group-is-layout-flow\">\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity has-custom-css wp-custom-css-09782953\"\/>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns are-vertically-aligned-center has-custom-uo-a-yellow-color has-custom-color-3-background-color has-text-color has-background has-link-color wp-elements-3 is-layout-flex wp-container-core-columns-is-layout-2adbd82e wp-block-columns-is-layout-flex\" style=\"border-top-left-radius:15px;border-top-right-radius:15px;border-bottom-left-radius:15px;border-bottom-right-radius:15px;margin-top:0;margin-bottom:0;padding-right:var(--wp--preset--spacing--80);padding-left:var(--wp--preset--spacing--80)\">\n<div class=\"wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<p class=\"has-text-align-center wp-block-paragraph\">Klicke hier um die Beispiel-Codes herunterzuladen<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-center has-medium-font-size has-global-padding is-content-justification-left is-layout-constrained wp-container-core-column-is-layout-12dd3699 wp-block-column-is-layout-constrained\" style=\"flex-basis:100%\">\n<div class=\"wp-block-file aligncenter has-link-color wp-elements-4\" id=\"examples\" style=\"margin-right:0;margin-left:0\"><a id=\"wp-block-file--media-bd91a961-e503-4031-be9f-4915093c16a6\" href=\"https:\/\/learningfactorybox.com\/wp-content\/uploads\/2026\/02\/examples_codes_FactoryBox.zip\" target=\"_blank\" rel=\"noreferrer noopener\">examples_codes_FactoryBox<\/a><\/div>\n<\/div>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<\/div>\n\n\n\n<div data-wp-context=\"{ &quot;autoclose&quot;: false, &quot;accordionItems&quot;: [] }\" data-wp-interactive=\"core\/accordion\" role=\"group\" class=\"wp-block-accordion is-layout-flow wp-block-accordion-is-layout-flow\">\n<div data-wp-class--is-open=\"state.isOpen\" data-wp-context=\"{ &quot;id&quot;: &quot;accordion-item-1&quot;, &quot;openByDefault&quot;: false }\" data-wp-init=\"callbacks.initAccordionItems\" data-wp-on-window--hashchange=\"callbacks.hashChange\" class=\"wp-block-accordion-item is-layout-flow wp-block-accordion-item-is-layout-flow\">\n<h3 class=\"wp-block-accordion-heading\"><button aria-expanded=\"false\" aria-controls=\"accordion-item-1-panel\" data-wp-bind--aria-expanded=\"state.isOpen\" data-wp-on--click=\"actions.toggle\" id=\"accordion-item-1\" type=\"button\" class=\"wp-block-accordion-heading__toggle\"><span class=\"wp-block-accordion-heading__toggle-title\">\u2753Was sollst du machen?<\/span><span class=\"wp-block-accordion-heading__toggle-icon\" aria-hidden=\"true\">+<\/span><\/button><\/h3>\n\n\n\n<div aria-labelledby=\"accordion-item-1\" data-wp-bind--hidden=\"state.isHidden\" data-wp-on--beforematch=\"actions.handleBeforeMatch\" id=\"accordion-item-1-panel\" role=\"region\" class=\"wp-block-accordion-panel is-layout-flow wp-block-accordion-panel-is-layout-flow\">\n<ol class=\"wp-block-list has-small-font-size\">\n<li>Lade die Beispielcodes herunter.<\/li>\n\n\n\n<li>Extrahiere die Datei im Downloadordner<\/li>\n\n\n\n<li>W\u00e4hle die relevenaten Codes f\u00fcr die Coding Challenge (siehe Part ID)<\/li>\n\n\n\n<li>\u00d6ffne diese(n) in VS Code oder der Arduino IDE<\/li>\n\n\n\n<li>F\u00fchre den Code zun\u00e4chst die separat aus um deren Funktion zu verstehen. (Optional wenn du dich bereits auskennst)<\/li>\n\n\n\n<li>Nutze die Codes um Programmier Challenges abzuschlie\u00dfen oder sie in deine eigenen Experimente zu integrieren.<\/li>\n\n\n\n<li>Habe Spa\u00df!<\/li>\n<\/ol>\n\n\n\n<p class=\"has-base-color has-custom-aalen-dark-pink-background-color has-text-color has-background has-link-color wp-elements-5 wp-block-paragraph\" style=\"border-top-left-radius:15px;border-top-right-radius:15px;border-bottom-left-radius:15px;border-bottom-right-radius:15px\">\u2728<strong>Empfehlung:<\/strong><br>Wenn du dir unsicher bist, was z.B. ein Sensor alles machen kann - <strong>Google es! <\/strong>Viele der von uns verwendeten Bibliotheken bieten umfangreiche Optionen, die in unseren Beispielen nicht gezeigt werden.<br>Wenn du m\u00f6chtest, dass der LED-Streifen in Regenbogenfarben leuchtet, ist das kein Problem. Wenn du einen Scherz machen und die Lichter dem E-Alarm-Knopf zuordnen m\u00f6chtest, \u00e4ndere einfach die Pins! Diese Herausforderungen bieten zwar einen Rahmen, du bist aber nicht daran gebunden, dich daran zu halten<br><\/p>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<div data-wp-context=\"{ &quot;autoclose&quot;: false, &quot;accordionItems&quot;: [] }\" data-wp-interactive=\"core\/accordion\" role=\"group\" class=\"wp-block-accordion is-layout-flow wp-block-accordion-is-layout-flow\">\n<div data-wp-class--is-open=\"state.isOpen\" data-wp-context=\"{ &quot;id&quot;: &quot;accordion-item-3&quot;, &quot;openByDefault&quot;: false }\" data-wp-init=\"callbacks.initAccordionItems\" data-wp-on-window--hashchange=\"callbacks.hashChange\" class=\"wp-block-accordion-item is-layout-flow wp-block-accordion-item-is-layout-flow\">\n<h3 class=\"wp-block-accordion-heading\"><button aria-expanded=\"false\" aria-controls=\"accordion-item-3-panel\" data-wp-bind--aria-expanded=\"state.isOpen\" data-wp-on--click=\"actions.toggle\" id=\"accordion-item-3\" type=\"button\" class=\"wp-block-accordion-heading__toggle\"><span class=\"wp-block-accordion-heading__toggle-title\">\ud83d\udee0\ufe0f Sensor Layout<\/span><span class=\"wp-block-accordion-heading__toggle-icon\" aria-hidden=\"true\">+<\/span><\/button><\/h3>\n\n\n\n<div aria-labelledby=\"accordion-item-3\" data-wp-bind--hidden=\"state.isHidden\" data-wp-on--beforematch=\"actions.handleBeforeMatch\" id=\"accordion-item-3-panel\" role=\"region\" class=\"wp-block-accordion-panel is-layout-flow wp-block-accordion-panel-is-layout-flow\" style=\"box-shadow:none\">\n<figure class=\"wp-block-gallery alignfull has-nested-images columns-default is-cropped wp-block-gallery-2 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\" style=\"margin-top:var(--wp--preset--spacing--40);margin-right:var(--wp--preset--spacing--60);margin-bottom:var(--wp--preset--spacing--40);margin-left:var(--wp--preset--spacing--60)\"><img data-recalc-dims=\"1\" decoding=\"async\" width=\"3004\" height=\"1519\" data-attachment-id=\"234\" data-permalink=\"https:\/\/learningfactorybox.com\/de\/?attachment_id=234\" data-orig-file=\"https:\/\/i0.wp.com\/learningfactorybox.com\/wp-content\/uploads\/2026\/02\/factorybox-diagram-1.png?fit=3004%2C1519&amp;ssl=1\" data-orig-size=\"3004,1519\" data-comments-opened=\"1\" data-image-title=\"FactoryBox Diagram\" data-image-description=\"\" data-image-caption=\"&lt;p&gt;FactoryBox Sensor Layout&lt;\/p&gt;\" data-large-file=\"https:\/\/i0.wp.com\/learningfactorybox.com\/wp-content\/uploads\/2026\/02\/factorybox-diagram-1.png?fit=1024%2C518&amp;ssl=1\" fetchpriority=\"low\" data-id=\"234\" src=\"https:\/\/i0.wp.com\/learningfactorybox.com\/wp-content\/uploads\/2026\/02\/factorybox-diagram-1.png?resize=3004%2C1519&#038;ssl=1\" alt=\"\" class=\"wp-image-234\" style=\"box-shadow:none\"\/><\/figure>\n<\/figure>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<div data-wp-context=\"{ &quot;autoclose&quot;: false, &quot;accordionItems&quot;: [] }\" data-wp-interactive=\"core\/accordion\" role=\"group\" class=\"wp-block-accordion is-layout-flow wp-block-accordion-is-layout-flow\">\n<div data-wp-class--is-open=\"state.isOpen\" data-wp-context=\"{ &quot;id&quot;: &quot;accordion-item-6&quot;, &quot;openByDefault&quot;: false }\" data-wp-init=\"callbacks.initAccordionItems\" data-wp-on-window--hashchange=\"callbacks.hashChange\" class=\"wp-block-accordion-item is-layout-flow wp-block-accordion-item-is-layout-flow\">\n<h3 class=\"wp-block-accordion-heading\"><button aria-expanded=\"false\" aria-controls=\"accordion-item-6-panel\" data-wp-bind--aria-expanded=\"state.isOpen\" data-wp-on--click=\"actions.toggle\" id=\"accordion-item-6\" type=\"button\" class=\"wp-block-accordion-heading__toggle\"><span class=\"wp-block-accordion-heading__toggle-title\"><span style=\"color:#0D3525\"><strong>\ud83d\udfe2 Level 0 \u2013 Simple Kontrollen &amp; Eingabe<\/strong><\/span><\/span><span class=\"wp-block-accordion-heading__toggle-icon\" aria-hidden=\"true\">+<\/span><\/button><\/h3>\n\n\n\n<div aria-labelledby=\"accordion-item-6\" data-wp-bind--hidden=\"state.isHidden\" data-wp-on--beforematch=\"actions.handleBeforeMatch\" id=\"accordion-item-6-panel\" role=\"region\" class=\"wp-block-accordion-panel is-layout-flow wp-block-accordion-panel-is-layout-flow\">\n<p class=\"wp-block-paragraph translation-block\"><strong>Level 0<\/strong> ist darauf ausgelegt, Dir einen <strong>einfachen Einstieg<\/strong> zu erm\u00f6glichen.\n<br> Die Anforderungen sind gering aber grundlegend.<br>Sie decken nicht alle Sensoren\/Aktoren der FactoryBox ab.<br>Aber sie bieten Dir die M\u00f6glichkeit, dich mit der Verwendung von <strong>VSCode<\/strong> und <strong>PlattformIO<\/strong> vertraut zu machen.<br>Wie man Code hochl\u00e4dt, wie man kleine \u00c4nderungen vornimmt usw.<\/p>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator aligncenter has-alpha-channel-opacity has-custom-css wp-custom-css-639e0d2f\"\/>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><th><span style=\"color:#0071BC\">Aufgabe<\/span><\/th><th><span style=\"color:#0071BC\">Einschalten einer LED mit einem Knopfdruck<\/span><\/th><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Was ist zu tun:<\/span><\/td><td><em>Schalte die LED ein und aus \u00fcber das Dr\u00fccken eines Tasters<\/em><\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Notwendige Bauteile:<\/span><\/td><td>LED Wei\u00df (ID: 36) <br> Taster (ID:44)<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Ziele:<\/span><\/td><td>Verbinde eine LED mit dem ESP32 <br>Pr\u00fcfe auf Eingabe durch Taster-Druck<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Hinweise zur<br>Implementierung:<\/span><\/td><td class=\"translation-block\">Teste die Bauteile einzeln bevor Du sie kombinierst. <br> Passe auf wegen <strong>Taster-Prellen<\/strong>. <br> Nur diese beiden Bauteile (Taster\/LED) sind nicht \u00fcber den GPIO-Extender verbunden.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator aligncenter has-alpha-channel-opacity has-custom-css wp-custom-css-639e0d2f\"\/>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><th><span style=\"color:#0071BC\">Aufgabe<\/span><\/th><th><span style=\"color:#0071BC\">Bewege einen Servo-Motor<\/span><\/th><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Was ist zu tun:<\/span><\/td><td><em>Versuche den Servo-Motor. Versuche eine fl\u00fcssige Bewegung zu erzeugen.<\/em><\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Notwendige Bauteile:<\/span><\/td><td>Servomotor (ID: 50)<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Ziele:<\/span><\/td><td>Nutze PWM um den Servomotor zu bewegen.<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Hinweise zur<br>Implementierung:<\/span><\/td><td class=\"translation-block\">Servos k\u00f6nnen bis zu <strong> 180\u00b0 <\/strong> rotieren. Fl\u00fcssige Bewegungen k\u00f6nnen \u00fcber Ver\u00e4nderung der Bewegungsgeschwindigkeit erreicht werden.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator aligncenter has-alpha-channel-opacity has-custom-css wp-custom-css-639e0d2f\"\/>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><th><span style=\"color:#0071BC\">Aufgabe<\/span><\/th><th><span style=\"color:#0071BC\">Bewege einen Stepper-Motor<\/span><\/th><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Was ist zu tun:<\/span><\/td><td><em>Bringe den Stepper-Motor dazu sich zu bewegen. Versuche eine fl\u00fcssige Drehbewegung zu erzielen.<\/em><\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Notwendige Bauteile:<\/span><\/td><td>Stepper Motor (ID: 51)<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Ziele:<\/span><\/td><td>Rotiere den Stepper-Motor<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Hinweise zur<br>Implementierung:<\/span><\/td><td class=\"translation-block\">Richtung und Geschwindigkeit k\u00f6nnen variiert werden. <br>\nStepper-Motoren k\u00f6nnen \u00fcber die 360\u00b0 hinaus rotieren.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<div data-wp-context=\"{ &quot;autoclose&quot;: false, &quot;accordionItems&quot;: [] }\" data-wp-interactive=\"core\/accordion\" role=\"group\" class=\"wp-block-accordion is-layout-flow wp-block-accordion-is-layout-flow\">\n<div data-wp-class--is-open=\"state.isOpen\" data-wp-context=\"{ &quot;id&quot;: &quot;accordion-item-7&quot;, &quot;openByDefault&quot;: false }\" data-wp-init=\"callbacks.initAccordionItems\" data-wp-on-window--hashchange=\"callbacks.hashChange\" class=\"wp-block-accordion-item is-layout-flow wp-block-accordion-item-is-layout-flow\">\n<h3 class=\"wp-block-accordion-heading\"><button aria-expanded=\"false\" aria-controls=\"accordion-item-7-panel\" data-wp-bind--aria-expanded=\"state.isOpen\" data-wp-on--click=\"actions.toggle\" id=\"accordion-item-7\" type=\"button\" class=\"wp-block-accordion-heading__toggle\"><span class=\"wp-block-accordion-heading__toggle-title\"><span style=\"color:#0D3525\"><strong>\ud83d\udfe1 Level 1 \u2013 Mittelschwere Kontrollen &amp; Ausgabe<\/strong><\/span><\/span><span class=\"wp-block-accordion-heading__toggle-icon\" aria-hidden=\"true\">+<\/span><\/button><\/h3>\n\n\n\n<div aria-labelledby=\"accordion-item-7\" data-wp-bind--hidden=\"state.isHidden\" data-wp-on--beforematch=\"actions.handleBeforeMatch\" id=\"accordion-item-7-panel\" role=\"region\" class=\"wp-block-accordion-panel is-layout-flow wp-block-accordion-panel-is-layout-flow\">\n<p class=\"wp-block-paragraph translation-block\"><strong>Level 1<\/strong> ist darauf ausgelegt, die <strong>Anforderungen etwas zu erh\u00f6hen<\/strong>.<br>Du arbeitest mit Listen, nutzt <strong>Bibliotheken<\/strong> intensiver und verwendest <strong>I\u00b2C<\/strong>, um die Funktionalit\u00e4t zu erweitern.<br>Du kannst auf dem Code aus Level 0 aufbauen und neue F\u00e4higkeiten erlernen.<br>Wenn Du jedoch eine eigene Idee hast, <strong>ermutigen wir Dich, sie auszuprobieren<\/strong>.<\/p>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator aligncenter has-alpha-channel-opacity has-custom-css wp-custom-css-639e0d2f\"\/>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><th><span style=\"color:#0071BC\">Aufgabe<\/span><\/th><th><span style=\"color:#0071BC\">LED Animation on RGBW Strip<\/span><\/th><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Was ist zu tun:<\/span><\/td><td><em>Eine Animation auf dem LED-Streifen erstellen. Ein einfacher Anfang ist eine einzelne LED, die sich entlang des Streifens bewegt.<\/em><\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Notwendige Bauteile:<\/span><\/td><td>LED Strip (ID: 40)<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Ziele:<\/span><\/td><td class=\"translation-block\">Die LED-Sequenz entsprechend dem Layout-Diagramm animieren <br> Sanfte Farb\u00fcberg\u00e4nge erzeugen<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Hinweise zur<br>Implementierung:<\/span><\/td><td class=\"translation-block\">Obwohl separat aufgef\u00fchrt, sind alle LED-Streifen <strong>an denselben Pin angeschlossen<\/strong> <br> Die Ausrichtung der LEDs kann variieren<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator aligncenter has-alpha-channel-opacity has-custom-css wp-custom-css-639e0d2f\"\/>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><th><span style=\"color:#0071BC\">Aufgabe<\/span><\/th><th><span style=\"color:#0071BC\">Turn On All Hall Lights<\/span><\/th><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Was ist zu tun:<\/span><\/td><td><em>Turn all the white LEDs on\/off with the push of the light-button on the control panel<\/em><\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Notwendige Bauteile:<\/span><\/td><td>LED White (ID: 33, 34, 35, 36) <br> Push Button (ID: 42) <br> LDR (ID: 32) <br> IO Expander (ID: 52)<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Ziele:<\/span><\/td><td class=\"translation-block\">LEDs \u00fcber den IO-Expander anschlie\u00dfen <br> Beleuchtung mit einem Taster steuern <br> Lichter automatisch einschalten, wenn es dunkel ist<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Hinweise zur<br>Implementierung:<\/span><\/td><td class=\"translation-block\">Nicht alle LEDs werden \u00fcber den IO-Expander gesteuert <br> LDR-aktivierte Lichter sollten sich mit dem n\u00e4chsten Tastendruck ausschalten lassen<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph translation-block\">Die Beleuchtung in Fabriken spielt eine entscheidende Rolle bei der <strong>Gew\u00e4hrleistung von Sicherheit, Produktivit\u00e4t und Gesamteffizienz<\/strong> in industriellen Umgebungen. Eine angemessene Beleuchtung erm\u00f6glicht es den Mitarbeitenden, Maschinen, Werkzeuge und Materialien klar zu erkennen, wodurch das Risiko von Unf\u00e4llen und Fehlern verringert wird. In Fabriken, in denen Pr\u00e4zision entscheidend ist \u2013 wie etwa an Montagelinien oder Qualit\u00e4tskontrollstationen \u2013<br><strong>hat eine gute Beleuchtung direkten Einfluss auf die Produktqualit\u00e4t<\/strong>. Dar\u00fcber hinaus k\u00f6nnen gut konzipierte Beleuchtungssysteme die Augenbelastung und Erm\u00fcdung reduzieren und so den Komfort sowie die Leistungsf\u00e4higkeit der Mitarbeitenden \u00fcber lange Schichten hinweg verbessern.<\/p>\n\n\n\n<p class=\"wp-block-paragraph translation-block\">Verschiedene Beleuchtungsfunktionen werden eingesetzt, um sich an unterschiedliche betriebliche Anforderungen anzupassen. <strong>Manuelle Einschaltsteuerungen<\/strong> erm\u00f6glichen es Mitarbeitenden oder Vorgesetzten, das Licht nur dann einzuschalten, wenn bestimmte Bereiche genutzt werden. Dies sorgt f\u00fcr Flexibilit\u00e4t und hilft, unn\u00f6tigen Energieverbrauch zu reduzieren. Beispielsweise ben\u00f6tigen Lagerr\u00e4ume oder Wartungsbereiche keine dauerhafte Beleuchtung.<\/p>\n\n\n\n<p class=\"wp-block-paragraph translation-block\"><strong>Lichtempfindliche Funktionen<\/strong>, die h\u00e4ufig durch Sensoren gesteuert werden, passen die Beleuchtung automatisch an das nat\u00fcrliche Tageslicht an. Wenn ausreichend Sonnenlicht vorhanden ist, kann die k\u00fcnstliche Beleuchtung gedimmt oder ausgeschaltet werden, <strong>wodurch Energie gespart und die Betriebskosten gesenkt werden.<\/strong> Diese Systeme sorgen zudem den ganzen Tag \u00fcber f\u00fcr eine gleichm\u00e4\u00dfige Helligkeit und gew\u00e4hrleisten sichere sowie komfortable Arbeitsbedingungen, ohne dass manuelle Anpassungen erforderlich sind.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Durch die Kombination von manuellen Steuerungen und lichtempfindlicher Automatisierung k\u00f6nnen Fabriken ein Beleuchtungssystem schaffen, das sicher, energieeffizient und an unterschiedliche Aufgaben sowie Arbeitsbedingungen anpassbar ist.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator aligncenter has-alpha-channel-opacity has-custom-css wp-custom-css-95b8ff34\"\/>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><th><span style=\"color:#0071BC\">Aufgabe<\/span><\/th><th><span style=\"color:#0071BC\">Read Distance via I2C and Display as Text<\/span><\/th><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Was ist zu tun:<\/span><\/td><td><em>Die Entfernung vom Abstandssensor erfassen und auf dem LCD-Display anzeigen<\/em><\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Notwendige Bauteile:<\/span><\/td><td>Distanz-Sensor (ID: 54) <br> LCD Display (ID: 53)<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Ziele:<\/span><\/td><td class=\"translation-block\">Abstand messen <br> Ergebnisse mit Einheiten anzeigen<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Hinweise zur<br>Implementierung:<\/span><\/td><td class=\"translation-block\">Fehlende Sensordaten behandeln <br> Warnung ausgeben, wenn der Abstand zu gering ist <br> Verbindungen <strong>separat<\/strong> testen<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<div data-wp-context=\"{ &quot;autoclose&quot;: false, &quot;accordionItems&quot;: [] }\" data-wp-interactive=\"core\/accordion\" role=\"group\" class=\"wp-block-accordion is-layout-flow wp-block-accordion-is-layout-flow\">\n<div data-wp-class--is-open=\"state.isOpen\" data-wp-context=\"{ &quot;id&quot;: &quot;accordion-item-8&quot;, &quot;openByDefault&quot;: false }\" data-wp-init=\"callbacks.initAccordionItems\" data-wp-on-window--hashchange=\"callbacks.hashChange\" class=\"wp-block-accordion-item is-layout-flow wp-block-accordion-item-is-layout-flow\">\n<h3 class=\"wp-block-accordion-heading\"><button aria-expanded=\"false\" aria-controls=\"accordion-item-8-panel\" data-wp-bind--aria-expanded=\"state.isOpen\" data-wp-on--click=\"actions.toggle\" id=\"accordion-item-8\" type=\"button\" class=\"wp-block-accordion-heading__toggle\"><span class=\"wp-block-accordion-heading__toggle-title\"><span style=\"color:#0D3525\"><strong>\ud83d\udfe0 Level 2 \u2013 Smarte Interaktionen &amp; Logik<\/strong><\/span><\/span><span class=\"wp-block-accordion-heading__toggle-icon\" aria-hidden=\"true\">+<\/span><\/button><\/h3>\n\n\n\n<div aria-labelledby=\"accordion-item-8\" data-wp-bind--hidden=\"state.isHidden\" data-wp-on--beforematch=\"actions.handleBeforeMatch\" id=\"accordion-item-8-panel\" role=\"region\" class=\"wp-block-accordion-panel is-layout-flow wp-block-accordion-panel-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Level 2<\/strong> challenges to create <strong>actual factory use-cases<\/strong>.<br>With each challenge there is a small <strong>excursion<\/strong>, explaining it&#8217;s real world functionality and how that translates to our FactoryBox.<br>The challenges are non-exhaustive. There is <strong>more than one way<\/strong> to solve a problem. More than one solution to show a process.<br>The most important thing is that the codes compiles without error \ud83d\ude09<br><\/p>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator aligncenter has-alpha-channel-opacity has-custom-css wp-custom-css-639e0d2f\"\/>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><th><span style=\"color:#0071BC\">Aufgabe<\/span><\/th><th><span style=\"color:#0071BC\">Count Incoming Material<\/span><\/th><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Was ist zu tun:<\/span><\/td><td><em>L\u00f6se die Lichtschranke aus, indem der Servomotorarm zwischen Sensor und Sender bewegt und anschlie\u00dfend wieder herausgef\u00fchrt wird. Starte bei einem Z\u00e4hlerstand von 0 auf der 7-Segment-Anzeige (4-digit Display) und erh\u00f6he diesen bei jeder Unterbrechung der Lichtschranke um eins.<\/em><\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Notwendige Bauteile:<\/span><\/td><td>Servomotor (ID: 49) <br> Lichtschranke (ID: 48) <br> 4-Digit Display (ID: 56)<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Ziele:<\/span><\/td><td class=\"translation-block\">Lichtschranke mit dem Servo ausl\u00f6sen <br> Bei Unterbrechung auf dem Display z\u00e4hlen<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Hinweise zur<br>Implementierung:<\/span><\/td><td class=\"translation-block\">Doppeltes Ausl\u00f6sen der Lichtschranke vermeiden <br> Darauf achten, den Servo nicht zu besch\u00e4digen <br> Geschwindigkeit f\u00fcr pr\u00e4zises Z\u00e4hlen optimieren<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph translation-block\"><strong>Qualit\u00e4tskontrollstationen<\/strong> sind in modernen Fabriken von entscheidender Bedeutung, da sie sicherstellen, dass nur korrekte und <strong>fehlerfreie<\/strong> Produkte im Produktionsprozess weitergef\u00fchrt werden. Durch das \u00dcberwachen und Z\u00e4hlen eingehender Materialien k\u00f6nnen Unternehmen den Produktionsfluss nachverfolgen, Fehler fr\u00fchzeitig erkennen und eine gleichbleibend hohe Produktqualit\u00e4t gew\u00e4hrleisten. Pr\u00e4zise Z\u00e4hlsysteme helfen dabei, Engp\u00e4sse, \u00dcberproduktion und kostspielige Fehler zu vermeiden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph translation-block\">In dieser Aufgabe verwendet die Qualit\u00e4tskontrollstation eine <strong>Lichtschranke<\/strong>, um Materialbewegungen zu erfassen. Wenn der Servomotorarm den Sensor passiert, <strong>simuliert<\/strong> er ein eintreffendes Produkt, das den Lichtstrahl unterbricht. Jede Unterbrechung entspricht einem gez\u00e4hlten Element. Das 4-stellige Display zeigt den aktuellen Z\u00e4hlerstand an, beginnend bei null und erh\u00f6ht sich bei jeder korrekt erfassten Unterbrechung um eins.<\/p>\n\n\n\n<p class=\"wp-block-paragraph translation-block\">Verschiedene Funktionen sind wichtig, um das System zuverl\u00e4ssig und pr\u00e4zise zu machen. Die Z\u00e4hllogik muss sicherstellen, dass eine Bewegung den Z\u00e4hler nur einmal erh\u00f6ht. Ohne diese Kontrolle k\u00f6nnten kleine Vibrationen oder langsame Bewegungen mehrere Z\u00e4hlvorg\u00e4nge f\u00fcr ein einzelnes Objekt ausl\u00f6sen. Dies verbessert die Genauigkeit und <strong>verhindert fehlerhafte Produktionsdaten<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Der Einsatz eines Servomotors erm\u00f6glicht eine kontrollierte und wiederholbare Bewegung, wodurch ein gleichm\u00e4\u00dfiger Materialfluss simuliert wird. Gleichzeitig sorgt die Optimierung der Geschwindigkeit des Servos daf\u00fcr, dass die Lichtschranke eindeutig ausgel\u00f6st wird, ohne mechanische Bauteile zu besch\u00e4digen. Ein gut abgestimmtes System vereint Pr\u00e4zision, Langlebigkeit und Effizienz.<\/p>\n\n\n\n<p class=\"wp-block-paragraph translation-block\">Durch die Kombination von Sensordetektion, kontrollierter Bewegung und digitalem Z\u00e4hlen zeigt die Qualit\u00e4tskontrollstation, wie <strong>Automatisierung eine pr\u00e4zise \u00dcberwachung unterst\u00fctzt<\/strong> und die allgemeine Zuverl\u00e4ssigkeit der Produktion verbessert.<\/p>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator aligncenter has-alpha-channel-opacity has-custom-css wp-custom-css-639e0d2f\"\/>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><th><span style=\"color:#0071BC\">Aufgabe<\/span><\/th><th><span style=\"color:#0071BC\">Umgebungs-\u00dcberwachung<\/span><\/th><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Was ist zu tun:<\/span><\/td><td><em>Ein System erstellen, das die Fabrikhalle automatisch \u00fcberwacht. Den L\u00fcfter einschalten, wenn es zu warm\/feucht\/gasbelastet wird, und wieder ausschalten, sobald sich die Situation verbessert hat<\/em><\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Notwendige Bauteile:<\/span><\/td><td>Luft-Qualit\u00e4ts-Sensor (ID:58) <br> Temperatur\/Luftfeuchte Sensor (ID: 55) <br> L\u00fcfter (ID: 47) <br> Optional: LED Rot (ID: 38)<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Ziele:<\/span><\/td><td class=\"translation-block\">L\u00fcfter einschalten, wenn Temperatur, Luftfeuchtigkeit oder Luftqualit\u00e4t schlecht sind <br> \u00dcberwachen und deaktivieren, sobald die Werte wieder im sicheren Bereich liegen <br> Optional: Rote LED bei schlechter Luftqualit\u00e4t einschalten<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Hinweise zur<br>Implementierung:<\/span><\/td><td class=\"translation-block\">Definiere <strong>praxisnahe Sensor-Schwellenwerte<\/strong> <br> Vermeide die Verwendung von <code>delay()<\/code> \u2013 nutze stattdessen Zeitintervalle <br> Verwende <strong>unterschiedliche Intervalle<\/strong> f\u00fcr Messungen und Warnungen <br> Gute Luftqualit\u00e4t bedeutet nicht immer gute Temperatur \u2013 pr\u00fcfe die Werte, bevor der L\u00fcfter ausgeschaltet wird<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph translation-block\"><strong>Umwelt\u00fcberwachung<\/strong> in einer Fabrik ist entscheidend, um sichere und gesunde Arbeitsbedingungen zu gew\u00e4hrleisten. Temperatur, Luftfeuchtigkeit und Luftqualit\u00e4t wirken sich direkt auf Mitarbeitende und Maschinen aus. Wird die Luft zu warm, zu feucht oder enth\u00e4lt sie sch\u00e4dliche Gase, kann dies den Komfort der Mitarbeitenden beeintr\u00e4chtigen, Ger\u00e4te besch\u00e4digen und sogar Gesundheitsrisiken darstellen. Ein automatisiertes \u00dcberwachungssystem hilft dabei, optimale Bedingungen aufrechtzuerhalten, ohne dass eine st\u00e4ndige manuelle Kontrolle erforderlich ist.<\/p>\n\n\n\n<p class=\"wp-block-paragraph translation-block\">In dieser Aufgabe messen Sensoren kontinuierlich die Luftqualit\u00e4t sowie Temperatur und Luftfeuchtigkeit. \u00dcberschreitet einer dieser Werte einen definierten Grenzwert, aktiviert das System automatisch den Ventilator, um die Luftzirkulation zu verbessern. Der Ventilator hilft dabei, Hitze zu reduzieren, \u00fcbersch\u00fcssige Feuchtigkeit zu entfernen oder belastete Luft zu beseitigen. Sobald die gemessenen Werte wieder in einem sicheren Bereich liegen, schaltet das System den Ventilator erneut aus, um Energie zu sparen und unn\u00f6tigen Betrieb zu vermeiden. Der Ventilator stellt in diesem Fall eine <strong>Darstellung von Klimaanlagen (AC-Systemen)<\/strong> dar, die Fabriken bel\u00fcften und f\u00fcr sichere Bedingungen sorgen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Eine optionale rote LED kann als visuelle Warnanzeige verwendet werden. Wenn sich die Luftqualit\u00e4t verschlechtert, leuchtet die LED auf und signalisiert sofort ein Problem. Dadurch wird das System transparenter und erm\u00f6glicht es den Mitarbeitenden, Umweltprobleme auf einen Blick zu erkennen. Im Falle schwerwiegender Umweltprobleme k\u00f6nnen die Mitarbeitenden sich sofort evakuieren oder Gegenma\u00dfnahmen ergreifen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph translation-block\">Verschiedene Funktionen sind wichtig, um einen <strong>zuverl\u00e4ssigen Betrieb<\/strong> zu gew\u00e4hrleisten. Praxisgerechte Sensor-Grenzwerte m\u00fcssen definiert werden, damit das System angemessen reagiert \u2013 weder zu fr\u00fch noch zu sp\u00e4t. Das Programm sollte <strong><code>delay()<\/code> vermeiden<\/strong> und stattdessen mit Zeitintervallen arbeiten, sodass eine kontinuierliche \u00dcberwachung <strong>ohne Blockierung<\/strong> anderer Prozesse m\u00f6glich ist. Die Verwendung getrennter Intervalle f\u00fcr Sensorabfragen und Warnsignale verbessert die Effizienz und Reaktionsf\u00e4higkeit des Systems. Zudem bedeutet eine gute Luftqualit\u00e4t nicht automatisch, dass Temperatur oder Luftfeuchtigkeit akzeptabel sind, daher m\u00fcssen alle Parameter \u00fcberpr\u00fcft werden, bevor der Ventilator ausgeschaltet wird.<\/p>\n\n\n\n<p class=\"wp-block-paragraph translation-block\">Durch die Kombination aus kontinuierlicher \u00dcberwachung, automatischer Steuerung und klaren Warnsignalen zeigt dieses Umwelt\u00fcberwachungssystem, wie intelligente Automatisierung die <strong>Sicherheit verbessern<\/strong>, die <strong>Energieeffizienz steigern<\/strong> und die <strong>Arbeitsbedingungen<\/strong> in industriellen Umgebungen optimieren kann.<\/p>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator aligncenter has-alpha-channel-opacity has-custom-css wp-custom-css-639e0d2f\"\/>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><th><span style=\"color:#0071BC\">Aufgabe<\/span><\/th><th><span style=\"color:#0071BC\">Implementierung einer Warn-\/Alarm-Anlage<\/span><\/th><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Was ist zu tun:<\/span><\/td><td><em>Ein Alarmsignal ausl\u00f6sen, wenn jemand oder etwas den gesperrten Bereich betritt, indem der Abstandssensor \u00fcberwacht wird. Verringert sich die Distanz stark, den Summer und die rote LED aktivieren, um einen Alarm zu erzeugen. Die Not-Aus-Taste (E-Stop) verwenden, um den Alarm zu stoppen bzw. zur\u00fcckzusetzen.<\/em><\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Notwendige Bauteile:<\/span><\/td><td>LED Rot (ID: 37, 38) <br> Taster (ID:43) <br> Buzzer (ID: 45) <br> Distanz-Sensor (ID: 54)<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Ziele:<\/span><\/td><td class=\"translation-block\">Bewegung im gesperrten Bereich erkennen <br> Alarm \u00fcber den Summer ausl\u00f6sen <br> Zur\u00fccksetzen \u00fcber einen Taster<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Hinweise zur<br>Implementierung:<\/span><\/td><td class=\"translation-block\">Verwende einen <strong>zeitgesteuerten Alarmton<\/strong>, nicht nur einen durchgehenden Dauerton <br> R\u00fccksetzen nicht erlauben, solange die Bedrohung weiterhin besteht<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph translation-block\">Ein <strong>Warnsystem<\/strong> ist ein wichtiger Bestandteil der Sicherheit in Fabriken, insbesondere in gesperrten oder gef\u00e4hrlichen Bereichen. Bestimmte Zonen k\u00f6nnen bewegliche Maschinen, hohe Spannungen oder empfindliche Ger\u00e4te enthalten, die <strong>w\u00e4hrend des Betriebs nicht betreten werden d\u00fcrfen<\/strong>. Ein automatisiertes Alarmsystem hilft dabei, unbefugtes Betreten zu erkennen und Mitarbeitende sofort zu warnen, um Unf\u00e4lle oder Sch\u00e4den zu verhindern.<\/p>\n\n\n\n<p class=\"wp-block-paragraph translation-block\">In dieser Aufgabe verwendet das System einen Abstandssensor, um einen gesperrten Bereich zu \u00fcberwachen. Dies funktioniert <strong>\u00e4hnlich wie eine Lichtschranke<\/strong>, wie sie typischerweise in einer realen Fabrik eingesetzt wird.<br>Wenn sich der gemessene Abstand pl\u00f6tzlich verringert, deutet dies darauf hin, dass eine Person oder ein Objekt in die \u00fcberwachte Zone eingetreten ist. Wird diese Ver\u00e4nderung erkannt, aktiviert das System sowohl den Summer als auch die rote LED, um ein klares visuelles und akustisches Alarmsignal zu erzeugen. Dadurch wird sichergestellt, dass die Warnung <strong>auch in einer lauten Fabrikumgebung<\/strong> wahrgenommen wird.<br>Maschinen erfordern jedoch Wartung, Werkzeugwechsel usw. Wenn die Produktion nicht l\u00e4uft, f\u00fchrt ein aktiver Alarm, der bei jedem Betreten eines Mitarbeiters ausgel\u00f6st wird, zu einer St\u00f6rung.<\/p>\n\n\n\n<p class=\"wp-block-paragraph translation-block\">Der Summer sollte keinen durchgehenden Ton erzeugen, sondern stattdessen ein zeitlich gesteuertes oder pulsierendes Alarmsignal abgeben. Dadurch wird die Warnung <strong>effektiver<\/strong> und <strong>leichter als solche erkennbar<\/strong>. Die rote LED verst\u00e4rkt den Alarm visuell und bietet eine sofortige Anzeige von Gefahr.<\/p>\n\n\n\n<p class=\"wp-block-paragraph translation-block\">Der Taster dient als Not-Aus- und Reset-Steuerung. Allerdings darf das System <strong>nicht zur\u00fcckgesetzt werden, solange die Gefahr noch besteht<\/strong>. Erst wenn der Abstandssensor erkennt, dass der gesperrte Bereich wieder frei ist, sollte der Alarm deaktiviert und das System zur\u00fccksetzbar sein. Dadurch werden unsichere Situationen verhindert, bei denen ein Alarm stummgeschaltet werden k\u00f6nnte, w\u00e4hrend die Gefahr weiterhin besteht.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Durch die Kombination aus sensorbasierter Erkennung, akustischen und visuellen Warnsignalen sowie einem kontrollierten R\u00fccksetzmechanismus zeigt dieses Warnsystem, wie Automatisierung die Sicherheit verbessert, schnelle Reaktionen auf Gefahren erm\u00f6glicht und sowohl Mitarbeitende als auch Anlagen in industriellen Umgebungen sch\u00fctzt.<\/p>\n\n\n\n<p class=\"wp-block-paragraph translation-block\">Ein solches Warnsystem ist noch effektiver, wenn es mit <strong>physischen Barrieren<\/strong> kombiniert wird. Im Modell verhindern Barrieren vor der CNC-Maschine und dem Roboter, dass Personen versehentlich gef\u00e4hrliche Bereiche betreten. Diese Barrieren arbeiten zusammen mit dem Abstandssensor und dem Alarmsystem und schaffen mehrere Schutzebenen. W\u00e4hrend die Sensoren unerwartete Bewegungen erkennen, blockieren die physischen Barrieren den Zugang und reduzieren so das Risiko von Verletzungen oder Ger\u00e4tesch\u00e4den.<\/p>\n\n\n\n<p class=\"wp-block-paragraph translation-block\">Dieser Ansatz spiegelt <strong>reale industrielle Umgebungen<\/strong> wider. In Fabriken ist Maschinen h\u00e4ufig durch Schutzvorrichtungen, Z\u00e4une oder Lichtvorh\u00e4nge abgesichert, um einen unbeabsichtigten Kontakt mit beweglichen Teilen zu verhindern. Selbst wenn Mitarbeitende Warnhinweise ignorieren, bieten diese physischen Barrieren eine letzte Schutzlinie. Durch die Kombination aus automatisierter Erkennung und physischem Schutz k\u00f6nnen Fabriken hohe Sicherheitsstandards aufrechterhalten und gleichzeitig einen effizienten Maschinenbetrieb gew\u00e4hrleisten. Im Modell veranschaulichen die Barrieren dieses Prinzip im Kleinen und zeigen den Lernenden, wie <strong>mehrschichtige Sicherheitssysteme<\/strong> \u2013 bestehend aus Sensoren, Alarmen und Barrieren \u2013 zusammenarbeiten, um Menschen und Ger\u00e4te zu sch\u00fctzen.<\/p>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<div data-wp-context=\"{ &quot;autoclose&quot;: false, &quot;accordionItems&quot;: [] }\" data-wp-interactive=\"core\/accordion\" role=\"group\" class=\"wp-block-accordion is-layout-flow wp-block-accordion-is-layout-flow\">\n<div data-wp-class--is-open=\"state.isOpen\" data-wp-context=\"{ &quot;id&quot;: &quot;accordion-item-9&quot;, &quot;openByDefault&quot;: false }\" data-wp-init=\"callbacks.initAccordionItems\" data-wp-on-window--hashchange=\"callbacks.hashChange\" class=\"wp-block-accordion-item is-layout-flow wp-block-accordion-item-is-layout-flow\">\n<h3 class=\"wp-block-accordion-heading\"><button aria-expanded=\"false\" aria-controls=\"accordion-item-9-panel\" data-wp-bind--aria-expanded=\"state.isOpen\" data-wp-on--click=\"actions.toggle\" id=\"accordion-item-9\" type=\"button\" class=\"wp-block-accordion-heading__toggle\"><span class=\"wp-block-accordion-heading__toggle-title\"><span style=\"color:#0D3525\"><strong>\ud83d\udd34 Level 3 \u2013 Fortgeschrittene Systeme &amp; Produktionszyklus<\/strong><\/span><\/span><span class=\"wp-block-accordion-heading__toggle-icon\" aria-hidden=\"true\">+<\/span><\/button><\/h3>\n\n\n\n<div aria-labelledby=\"accordion-item-9\" data-wp-bind--hidden=\"state.isHidden\" data-wp-on--beforematch=\"actions.handleBeforeMatch\" id=\"accordion-item-9-panel\" role=\"region\" class=\"wp-block-accordion-panel is-layout-flow wp-block-accordion-panel-is-layout-flow\">\n<figure class=\"wp-block-table\"><table><tbody><tr><th><span style=\"color:#0071BC\">Aufgabe<\/span><\/th><th><span style=\"color:#0071BC\">Vollst\u00e4ndiger Produktionszyklus<\/span><\/th><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Was ist zu tun:<\/span><\/td><td class=\"translation-block\"><em> Erwecke die FactoryBox zum Leben. Nutze das  <a href=\"#factory-flow\" data-type=\"internal\" data-id=\"#factory-flow\" target=\"_self\">Flussdiagramm<\/a> als Referenz f\u00fcr den Ablauf. Starte den Prozess mit dem Dr\u00fccken des Start-Tasters und kombiniere ihn mit den Prozessen aus vorangegangenen Challenges.\n<\/em><\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Notwendige Bauteile:<\/span><\/td><td>Servo-Motor (ID: 49, 50) <br> Lichtschranke (ID: 48) <br> 4-Digit Display (ID: 56) <br> Stepper Motor (ID: 51) <br> LED Blau (ID: 39) <br> Taster  (ID: 41, 44) <br> IO Expander (ID: 52) <br> LCD Display (ID: 53) <br> LED Bar (ID: 57) <br> LED Strip (ID: 40) <br> Solenoid (ID: 46)<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Ziele:<\/span><\/td><td class=\"translation-block\">Start der Produktion per Knopfdruck <br> Visualisierung des Ablaufs mittels LED-Streifen <br> Z\u00e4hlen der Teile und Anzeige des Fortschritts <br> Simulation des CNC-Prozesses und des robotischen Entladens <br> Zur\u00fccksetzen per Reset-Taste<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Hinweise zur<br>Implementierung:<\/span><\/td><td class=\"translation-block\">Entscheide, ob alles einmal ausgel\u00f6st wird oder in einer Schleife l\u00e4uft <br> Verwendung von <strong>klaren Code-Kommentaren<\/strong> zur Erkl\u00e4rung der Logik<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator aligncenter has-alpha-channel-opacity has-custom-css wp-custom-css-639e0d2f\"\/>\n\n\n\n<div style=\"height:3em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><th><span style=\"color:#0071BC\">Aufgabe<\/span><\/th><th><span style=\"color:#0071BC\">Verbinden von Produktion und Hallen-Funktionen<\/span><\/th><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Was ist zu tun:<\/span><\/td><td><em>F\u00fcge dem Produktionprozess die grundlegenden Hallen-\u00dcberwachungsfuntionen hinzu. Kombiniere hierf\u00fcr die verschiedenen Challenges wie das Alarm-System.<br> Bsp.: Wenn ein Alarm ausl\u00f6st, muss alle Produktion zum Stillstand kommen. Wird der Notstop (e-stop) ausgel\u00f6st gilt dies ebenfalls.<\/em><\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Notwendige Bauteile:<\/span><\/td><td>(Alle Teile der vorangegangenen Challenge) <br> Zus\u00e4tzlich:<br> LED Wei\u00df (ID: 33, 34, 35, 36) <br> LED Rot (ID: 37, 38) <br> LDR (ID: 32) <br> Taster (ID: 42, 43) <br> Buzzer (ID: 45) <br> Distanz-Sensor (ID: 54) <br> Luft-Qualit\u00e4ts-Sensor (ID:58) <br> Temperatur\/Luftfeuchte Sensor (ID: 55) <br> L\u00fcfter (ID: 47)<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Ziele:<\/span><\/td><td>F\u00fcge Luftqualit\u00e4ts- und Beleuchtungs-Funktionen hinzu <br> Erm\u00f6gliche das Ausl\u00f6sen von Alarmen w\u00e4hrend CNC\/Roboter-Bewegungen. <br> Pausiere die Produktion wenn Alarm oder der Not-Stop ausgel\u00f6st werden.<\/td><\/tr><tr><td><span style=\"color:#275D38;font-weight:bold\">Hinweise zur<br>Implementierung:<\/span><\/td><td class=\"translation-block\">Verwende <strong> nicht-blockierenden<\/strong> (Keine delays() verwenden!)<br> Definiere klare Bedingungen f\u00fcr die Aktivierung eines System<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<div style=\"height:1em\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<div data-wp-context=\"{ &quot;autoclose&quot;: false, &quot;accordionItems&quot;: [] }\" data-wp-interactive=\"core\/accordion\" role=\"group\" class=\"wp-block-accordion is-layout-flow wp-block-accordion-is-layout-flow\">\n<div data-wp-class--is-open=\"state.isOpen\" data-wp-context=\"{ &quot;id&quot;: &quot;accordion-item-10&quot;, &quot;openByDefault&quot;: false }\" data-wp-init=\"callbacks.initAccordionItems\" data-wp-on-window--hashchange=\"callbacks.hashChange\" class=\"wp-block-accordion-item is-layout-flow wp-block-accordion-item-is-layout-flow\">\n<h3 class=\"wp-block-accordion-heading\"><button aria-expanded=\"false\" aria-controls=\"accordion-item-10-panel\" data-wp-bind--aria-expanded=\"state.isOpen\" data-wp-on--click=\"actions.toggle\" id=\"accordion-item-10\" type=\"button\" class=\"wp-block-accordion-heading__toggle\"><span class=\"wp-block-accordion-heading__toggle-title\"><span style=\"color:#0D3525\"><strong>\ud83d\udfe3 Zus\u00e4tzliche Herausforderungen<\/strong><\/span><\/span><span class=\"wp-block-accordion-heading__toggle-icon\" aria-hidden=\"true\">+<\/span><\/button><\/h3>\n\n\n\n<div aria-labelledby=\"accordion-item-10\" data-wp-bind--hidden=\"state.isHidden\" data-wp-on--beforematch=\"actions.handleBeforeMatch\" id=\"accordion-item-10-panel\" role=\"region\" class=\"wp-block-accordion-panel is-layout-flow wp-block-accordion-panel-is-layout-flow\">\n<figure class=\"wp-block-table is-style-regular\"><table><tbody><tr><th><span style=\"color:#0071BC\">Zus\u00e4tzliche Challenge<\/span><\/th><th><span style=\"color:#0071BC\">Beschreibung<\/span><\/th><\/tr><tr><td><strong>ISRs und Timers<\/strong><\/td><td class=\"translation-block\">Nutze <strong>Interrupt Service Routines (ISRs)<\/strong>  f\u00fcr Reaktionen in Echtzeit.<\/td><\/tr><tr><td><strong>Kombinieren der Hallen-Features<\/strong><\/td><td>Implementiere die Feautures der Hallo so, dass sie reibungslos w\u00e4hrend der Produktion funktionieren<\/td><\/tr><tr><td><strong>Refaktorisieren des Codes<\/strong><\/td><td>Refaktorisiere den Code mit wiederverwendbaren Funktionen und Klassen<\/td><\/tr><tr><td><strong>LED Animationen<\/strong><\/td><td>Kreiere indivielle Animationen f\u00fcr die LED-Streifen oder die CNC-Maschine<\/td><\/tr><tr><td><strong>Startup Kalibrierung<\/strong><\/td><td class=\"translation-block\">F\u00fcge eine <strong> Kalibrierung<\/strong> aller Sensoren bei Systemstart hinzu.<\/td><\/tr><\/tbody><\/table><\/figure>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>","protected":false},"excerpt":{"rendered":"<p>Coding Challenges Here are some example tasks for working with the FactoryBox.They start with the basic principles of working with an ESP32 and Arduino, then progress to more complex sensor integrations and optional challenges. If you get stuck on any part or are unsure how to use PlattformIO, check the Teaching Guide for help If [&hellip;]<\/p>\n","protected":false},"author":277789124,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"jetpack_seo_schema_type":"","_wpcom_ai_launchpad_about_page":false,"_wpcom_ai_launchpad_gallery_page":false,"_wpcom_ai_launchpad_contact_page":false,"_wpcom_ai_launchpad_events_page":false,"_wpcom_ai_launchpad_video_page":false,"_wpcom_ai_launchpad_portfolio_piece":false,"_jetpack_hide_featured_image":false,"_jetpack_featured_image_duplicate_dismissed":0,"footnotes":""},"class_list":["post-227","page","type-page","status-publish","hentry"],"jetpack_likes_enabled":true,"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/Ph6Zln-3F","jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/learningfactorybox.com\/de\/wp-json\/wp\/v2\/pages\/227","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/learningfactorybox.com\/de\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/learningfactorybox.com\/de\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/learningfactorybox.com\/de\/wp-json\/wp\/v2\/users\/277789124"}],"replies":[{"embeddable":true,"href":"https:\/\/learningfactorybox.com\/de\/wp-json\/wp\/v2\/comments?post=227"}],"version-history":[{"count":70,"href":"https:\/\/learningfactorybox.com\/de\/wp-json\/wp\/v2\/pages\/227\/revisions"}],"predecessor-version":[{"id":1763,"href":"https:\/\/learningfactorybox.com\/de\/wp-json\/wp\/v2\/pages\/227\/revisions\/1763"}],"wp:attachment":[{"href":"https:\/\/learningfactorybox.com\/de\/wp-json\/wp\/v2\/media?parent=227"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}