<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Programmiersprachen Archive &#187; brickobotik</title>
	<atom:link href="https://www.brickobotik.de/category/lernen-lehren/programmiersprachen/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.brickobotik.de/category/lernen-lehren/programmiersprachen/</link>
	<description>- Digitale Bildung für alle - Deine Quelle zu den Themen Robotik, 3D-Druck und Mikrocontroller.</description>
	<lastBuildDate>Tue, 07 Sep 2021 09:23:59 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.2</generator>
	<item>
		<title>MicroPython – Praktikum 1: Erstellen eines Projekts</title>
		<link>https://www.brickobotik.de/micropython-praktikum-1-erstellen-eines-projekts/</link>
					<comments>https://www.brickobotik.de/micropython-praktikum-1-erstellen-eines-projekts/#comments</comments>
		
		<dc:creator><![CDATA[Dr. Fabian Deitelhoff]]></dc:creator>
		<pubDate>Mon, 13 Jan 2020 07:00:00 +0000</pubDate>
				<category><![CDATA[Programmiersprachen]]></category>
		<category><![CDATA[LEGO Mindstorms EV3]]></category>
		<category><![CDATA[MicroPython]]></category>
		<category><![CDATA[Python 3]]></category>
		<category><![CDATA[SPIKE™ Prime]]></category>
		<guid isPermaLink="false">https://www.brickobotik.de/?p=3879</guid>

					<description><![CDATA[<p>Der Beitrag <a href="https://www.brickobotik.de/micropython-praktikum-1-erstellen-eines-projekts/">MicroPython – Praktikum 1: Erstellen eines Projekts</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div class="et_pb_section et_pb_section_0 et_section_regular" >
				
				
				
				
				
				
				<div class="et_pb_row et_pb_row_0">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_0  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_0  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="text-align: justify;">In der ersten Praktikumsaufgabe geht es darum, ein Projekt in Visual Studio Code zu erstellen, um darin in Python geschriebene Programme abzulegen. Diese können dann auf den LEGO® Mindstorms® EV3 übertragen werden, um sie dort auszuführen. In der <a href="micropython-installationsanleitung/" title="Installationsanleitung für MicroPython">Installationsanleitung zu MicroPython</a> haben wir gezeigt, wie ihr alle benötigten Komponenten installieren könnt und wie ihr einen kurzen Test durchführt, ob der EV3-Brick mit der neuen microSD-Karte startet.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_1">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_1  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_1  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Das erste Projekt</h1>
<p style="text-align: justify;">Jetzt wollen wir ein neues Projekt für unser erstes Python-Programm erstellen. VS Code selbst kann mit Projekten umgehen, indem ein Ordner oder ein sogenannter Arbeitsbereich geöffnet wird. Das nutzen wir in diesem Fall aber nicht. Die Erweiterung „EV3 MicroPython“, die wir bereits installiert haben, bietet einen eigenen Weg an, um Projekte zu erstellen.</p>
<p style="text-align: justify;">Dazu müsst ihr auf der linken Seite auf das EV3-Symbol klicken. Dann erscheint etwas weiter rechts eine Schaltfläche zum Erstellen eines neuen Projekts. Mit einem Klick auf „Create a new project“ wird der Name des Projekts abgefragt. Den könnt ihr euch aussuchen. Der Name sollte am besten keine Leerzeichen und keine Sonderzeichen beinhalten. Aus Erfahrung kann das im späteren Verlauf zu Problemen führen. Mit der Enter-Taste bestätigt ihr den Namen, worauf VS Code einen Dialog öffnet, damit ihr einen Ordner auswählen könnt, in dem das Projekt gespeichert wird. Damit habt ihr bereits euer erstes Projekt angelegt.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_2">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_2  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_image et_pb_image_0 et-waypoint">
				
				
				
				
				<a href="https://www.brickobotik.de/wp-content/uploads/2019/07/1.-VS-Code-MicroPython-Neues-Projekt.png" class="et_pb_lightbox_image" title=""><span class="et_pb_image_wrap "><img fetchpriority="high" decoding="async" width="353" height="353" src="https://www.brickobotik.de/wp-content/uploads/2019/07/1.-VS-Code-MicroPython-Neues-Projekt.png" alt="" title="" srcset="https://www.brickobotik.de/wp-content/uploads/2019/07/1.-VS-Code-MicroPython-Neues-Projekt.png 353w, https://www.brickobotik.de/wp-content/uploads/2019/07/1.-VS-Code-MicroPython-Neues-Projekt-300x300.png 300w, https://www.brickobotik.de/wp-content/uploads/2019/07/1.-VS-Code-MicroPython-Neues-Projekt-100x100.png 100w, https://www.brickobotik.de/wp-content/uploads/2019/07/1.-VS-Code-MicroPython-Neues-Projekt-150x150.png 150w" sizes="(max-width: 353px) 100vw, 353px" class="wp-image-3882" /></span></a>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_3">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_3  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_2  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="text-align: justify;">Beim Erstellen eines Projekts wird automatisch eine wichtige Datei erzeugt. Gemeint ist die Datei „main.py“, die das Hauptprogramm enthält. Darin ist ein erster Test enthalten, der den EV3-Brick zum Piepen bringt. Leider scheint es in der aktuellen MicroPython-Version einen Fehler zu geben: Die Datei wird nicht automatisch im Projekt in VS Code angezeigt. Das lässt sich ganz einfach beheben, indem ihr die Datei öffnet. Wählt dazu den Menüeintrag Datei &gt; Datei öffnen aus. Anschließend geht ihr in den Ordner, der durch das Projekt automatisch angelegt wurde und wählt die Datei „main.py“ aus. Sie erscheint dann im rechten Bereich von VS Code und wird bunt dargestellt. Das ist die sogenannte Syntaxhervorhebung, die wichtige Begriffe im Python-Quelltext verdeutlicht.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_4">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_4  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_3  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Aufgabe</h1>
<p style="text-align: justify;">Das im vorherigen Schritt erzeugte Projekt enthält immer die gleichen Dateien, die jeweils immer den gleichen Code enthalten. Zumindest für eine MicroPython-Version ist das identisch. Bei späteren Versionen von MicroPython kann sich das ändern.</p>
<p style="text-align: justify;">Die Aufgabe für das erste Praktikum ist es, den Text „Hallo brickobotik“ auf dem Display des LEGO Mindstorms EV3 auszugeben. Dafür kann das eben erzeugte Projekt verwendet werden, indem die Anweisungen in die Datei „main.py“ geschrieben werden.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_5">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_5  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_4  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h3>Wir testen unser erstes Projekt</h3>
<p style="text-align: justify;">Der Test eines Programms oder vielmehr das Starten eines Programms ist mit der MicroPython-Erweiterung für Visual Studio Code sehr einfach. Es reicht aus, die Taste F5 zu drücken. Nach ein paar Sekunden wird das Programm auf den EV3 übertragen und dort ausgeführt. Wenn alles funktioniert, erscheint unser Text „Hallo brickobotik“ auf dem Display des LEGO Mindstorms EV3.</p>
<p style="text-align: justify;">Um ein Programm ausführen zu können, muss ein EV3-Brick in Visual Studio Code verbunden werden. Unten links gibt es einen Bereich mit dem Namen „EV3DEV DEVICE BROWSER“. Dort könnt ihr auf den Text klicken, um ein Gerät auszuwählen. Ihr müsst dann in Visual Studio Code den angeschlossenen EV3-Brick auswählen. Dieser sollte sich mit dem Namen „ev3dev Ethernet“ melden. Wird das Gerät ausgewählt, verbindet sich Visual Studio Code damit und ihr könnt loslegen.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_6">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_6  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_gallery et_pb_gallery_0  et_pb_bg_layout_light et_pb_slider et_pb_gallery_fullwidth">
				<div class="et_pb_gallery_items et_post_gallery clearfix" data-per_page="4"><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_0_0"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/07/2.-VS-Code-ev3dev-Add-Device.png" title="VS Code ev3dev Add Device">
					<img loading="lazy" decoding="async" width="317" height="89" src="https://www.brickobotik.de/wp-content/uploads/2019/07/2.-VS-Code-ev3dev-Add-Device.png" class="wp-image-3883" srcset="https://www.brickobotik.de/wp-content/uploads/2019/07/2.-VS-Code-ev3dev-Add-Device.png 317w, https://www.brickobotik.de/wp-content/uploads/2019/07/2.-VS-Code-ev3dev-Add-Device-300x84.png 300w" sizes="(max-width: 317px) 100vw, 317px" />
					
				</a>
				</div></div><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_0_1"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/07/3.-VS-Code-EV3-Gerät-Auswahl.png" title="VS Code EV3 Gerät Auswahl">
					<img loading="lazy" decoding="async" width="641" height="116" src="https://www.brickobotik.de/wp-content/uploads/2019/07/3.-VS-Code-EV3-Gerät-Auswahl.png" class="wp-image-3884" srcset="https://www.brickobotik.de/wp-content/uploads/2019/07/3.-VS-Code-EV3-Gerät-Auswahl.png 641w, https://www.brickobotik.de/wp-content/uploads/2019/07/3.-VS-Code-EV3-Gerät-Auswahl-600x109.png 600w, https://www.brickobotik.de/wp-content/uploads/2019/07/3.-VS-Code-EV3-Gerät-Auswahl-300x54.png 300w, https://www.brickobotik.de/wp-content/uploads/2019/07/3.-VS-Code-EV3-Gerät-Auswahl-610x110.png 610w" sizes="(max-width: 641px) 100vw, 641px" />
					
				</a>
				</div></div><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_0_2"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/07/5.-VS-Code-ev3dev-connected.png" title="VS Code ev3dev connected">
					<img loading="lazy" decoding="async" width="264" height="124" src="https://www.brickobotik.de/wp-content/uploads/2019/07/5.-VS-Code-ev3dev-connected.png" class="wp-image-3885" />
					
				</a>
				</div></div><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_0_3"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/07/5.-VS-Code-ev3dev-disconnected.png" title="VS Code ev3dev disconnected">
					<img loading="lazy" decoding="async" width="315" height="104" src="https://www.brickobotik.de/wp-content/uploads/2019/07/5.-VS-Code-ev3dev-disconnected.png" class="wp-image-3886" srcset="https://www.brickobotik.de/wp-content/uploads/2019/07/5.-VS-Code-ev3dev-disconnected.png 315w, https://www.brickobotik.de/wp-content/uploads/2019/07/5.-VS-Code-ev3dev-disconnected-300x99.png 300w" sizes="(max-width: 315px) 100vw, 315px" />
					
				</a>
				</div></div><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_0_4"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/07/6.-VS-Code-ev3dev-not-connected.png" title="VS Code ev3dev not connected">
					<img loading="lazy" decoding="async" width="325" height="108" src="https://www.brickobotik.de/wp-content/uploads/2019/07/6.-VS-Code-ev3dev-not-connected.png" class="wp-image-3887" srcset="https://www.brickobotik.de/wp-content/uploads/2019/07/6.-VS-Code-ev3dev-not-connected.png 325w, https://www.brickobotik.de/wp-content/uploads/2019/07/6.-VS-Code-ev3dev-not-connected-300x100.png 300w" sizes="(max-width: 325px) 100vw, 325px" />
					
				</a>
				</div></div></div></div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_7">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_7  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_toggle et_pb_toggle_0 et_pb_toggle_item  et_pb_toggle_close">
				
				
				
				
				<h5 class="et_pb_toggle_title">API-Befehle für diese Aufgabe</h5>
				<div class="et_pb_toggle_content clearfix"><table style="width: 664px;">
<caption><span style="text-decoration: underline;"><strong>Allgemein</strong></span></caption>
<tbody>
<tr>
<td style="width: 369.717px;"><span style="color: #ff6600;">Befehl</span></td>
<td style="width: 275.283px;"><span style="color: #ff6600;">Erklärung</span></td>
</tr>
<tr>
<td style="width: 369.717px;">from pybricks import ev3brick as brick</td>
<td style="width: 275.283px;">Bindet Funktionen des EV3-Brick ein</td>
</tr>
<tr>
<td style="width: 369.717px;">from pybricks.tools import print, wait, StopWatch</td>
<td style="width: 275.283px;">Bindet das Delay-Kontroll-Interface ein</td>
</tr>
</tbody>
</table>
<table style="width: 665px;">
<caption><span style="text-decoration: underline;"><strong>Display</strong></span></caption>
<tbody>
<tr>
<td style="width: 365.317px;"><span style="color: #ff6600;">Befehl</span></td>
<td style="width: 279.683px;"><span style="color: #ff6600;">Erklärung</span></td>
</tr>
<tr>
<td style="width: 365.317px;">brick.display.clear()</td>
<td style="width: 279.683px;">Löscht zur Sicherheit alle Texte des LCDs des EV3-Bricks</td>
</tr>
<tr>
<td style="width: 365.317px;">brick.display.text(&#8222;Hallo brickobotik&#8220;, (20, 20))</td>
<td style="width: 279.683px; text-align: left;">Gibt den Text auf dem Bildschirm bei den Koordinaten 20, 20 aus (x, y)</td>
</tr>
</tbody>
</table>
<table style="width: 664px;">
<caption><span style="text-decoration: underline;"><strong>Kontrolle</strong></span></caption>
<tbody>
<tr>
<td style="width: 364.8px;"><span style="color: #ff6600;">Befehl</span></td>
<td style="width: 279.2px;"><span style="color: #ff6600;">Erklärung</span></td>
</tr>
<tr>
<td style="width: 364.8px;">wait(5000)</td>
<td style="width: 279.2px;">Wartet 5 Sekunden (5000 Millisekunden), damit der Text gut lesbar ist und nicht sofort verschwindet.</td>
</tr>
</tbody>
</table></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_8">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_8  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_5  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Die Lösung</h1></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_9">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_9  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				[et_pb_dmb_code_snippet title=&#8220;Listing 1: Das erste Programm&#8220; code=&#8220;IyEvdXNyL2Jpbi9lbnYgcHlicmlja3MtbWljcm9weXRob24KCmZyb20gcHlicmlja3MgaW1wb3J0IGV2M2JyaWNrIGFzIGJyaWNrCmZyb20gcHlicmlja3MudG9vbHMgaW1wb3J0IHByaW50LCB3YWl0LCBTdG9wV2F0Y2gKCiMgRGVuIGJpc2hlcmlnZW4gVGV4dCBkZXMgTENEcyBsw7ZzY2hlbi4KYnJpY2suZGlzcGxheS5jbGVhcigpCgpicmljay5kaXNwbGF5LnRleHQoIkhhbGxvIGJyaWNrb2JvdGlrIiwgKDIwLCAyMCkpCndhaXQoNTAwMCk=&#8220; language=&#8220;c&#8220; linenums=&#8220;on&#8220; _builder_version=&#8220;3.25.4&#8243; body_font=&#8220;||||||||&#8220;]IyEvdXNyL2Jpbi9lbnYgcHlicmlja3MtbWljcm9weXRob24KCmZyb20gcHlicmlja3MgaW1wb3J0IGV2M2JyaWNrIGFzIGJyaWNrCmZyb20gcHlicmlja3MudG9vbHMgaW1wb3J0IHByaW50LCB3YWl0LCBTdG9wV2F0Y2gKCiMgRGVuIGJpc2hlcmlnZW4gVGV4dCBkZXMgTENEcyBsw7ZzY2hlbi4KYnJpY2suZGlzcGxheS5jbGVhcigpCgpicmljay5kaXNwbGF5LnRleHQoIkhhbGxvIGJyaWNrb2JvdGlrIiwgKDIwLCAyMCkpCndhaXQoNTAwMCk=[/et_pb_dmb_code_snippet]<div class="et_pb_module et_pb_text et_pb_text_6  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h3 class="western">Eine kleine Anmerkung</h3>
<p style="text-align: justify;">Ihr habt vermutlich bemerkt, dass die Datei „main.py“ im Projekt, das wir für diese erste Praktikumsaufgabe angelegt haben, noch etwas mehr Python-Code enthält. Damit meinen wir den Anfang, wo mit dem Schlüsselwort „from“ verschiedene Module eingebunden werden. Viele dieser sogenannten Importe sind am Anfang nicht notwendig und könnten gelöscht werden. Wir empfehlen euch, die Python-Anweisungen trotzdem im Code zu lassen, weil sie im weiteren Verlauf wichtig werden. Und da sie im Moment nicht stören, können sie ruhig in der Datei belassen werden.</p></div>
			</div>
			</div>
				
				
				
				
			</div>
				
				
			</div>
<p>Der Beitrag <a href="https://www.brickobotik.de/micropython-praktikum-1-erstellen-eines-projekts/">MicroPython – Praktikum 1: Erstellen eines Projekts</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.brickobotik.de/micropython-praktikum-1-erstellen-eines-projekts/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>MicroPython – Installationsanleitung</title>
		<link>https://www.brickobotik.de/micropython-installationsanleitung/</link>
					<comments>https://www.brickobotik.de/micropython-installationsanleitung/#comments</comments>
		
		<dc:creator><![CDATA[Dr. Fabian Deitelhoff]]></dc:creator>
		<pubDate>Sat, 11 Jan 2020 08:00:00 +0000</pubDate>
				<category><![CDATA[Programmiersprachen]]></category>
		<category><![CDATA[LEGO Mindstorms EV3]]></category>
		<category><![CDATA[MicroPython]]></category>
		<category><![CDATA[Python 3]]></category>
		<category><![CDATA[SPIKE™ Prime;]]></category>
		<guid isPermaLink="false">https://www.brickobotik.de/?p=3872</guid>

					<description><![CDATA[<p>Der Beitrag <a href="https://www.brickobotik.de/micropython-installationsanleitung/">MicroPython – Installationsanleitung</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div class="et_pb_section et_pb_section_1 et_section_regular" >
				
				
				
				
				
				
				<div class="et_pb_row et_pb_row_10">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_10  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_7  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="text-align: justify;">Im <a href="micropython-lego-education-oeffnet-seine-plattform/" title="MicroPython Einführung">ersten Artikel zu MicroPython</a> haben wir beschrieben, was sich hinter diesem Namen verbirgt, was die Plattform ausmacht und was sie für die Zukunft der LEGO®-Robotik-Sets bedeuten könnte. In diesem und im nächsten Artikel geben wir euch eine erste Einführung in MicroPython. Weitere Praktika werden folgen.<br /> Zuerst schauen wir uns an, was installiert werden muss, um MicroPython nutzen zu können. Dafür haben wir eine Installationsanleitung zusammengestellt, der ihr folgen könnt.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_11">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_11  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_8  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Installation der Komponenten</h1>
<p>Bis ihr mit Python Programme für MicroPython auf dem LEGO® Mindstorms® EV3 erstellen könnt, müssen einige Komponenten installiert werden. Erfreulicherweise ist das recht einfach. Die <a href="c4ev3-installationsanleitung/" title="Installationsanleitung von c4ev3">Installation der Komponenten für c4ev3</a> fanden wir im Vergleich dazu umfangreicher. Im Grunde müsst ihr drei Schritte erledigen, um MicroPython nutzen zu können:</p>
<ol>
<li>Vorbereiten der <strong>microSD-Karte</strong></li>
<li>Installation von <strong>Visual Studio Code</strong></li>
<li>Installation von <strong>MicroPython</strong><br /> <strong></strong></li>
</ol>
<p>Beim ersten Schritt kann es sein, dass ihr ein kleines Tool (Etcher, siehe weiter unten) installieren müsst, um die microSD-Karte vorzubereiten. Wenn ihr so ein Tool schon habt, entfällt der zusätzliche Schritt natürlich.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_12">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_12  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_9  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h3>1. Vorbereiten der microSD-Karte</h3>
<p style="text-align: justify;">Die microSD-Karte ist wichtig, da sie ein angepasstes Betriebssystem für den LEGO® Mindstorms® EV3 enthält. LeJOS (Programmiersprache Java) und MonoBrick (Programmiersprache C#) machen das ebenso und bringen ihre eigenen Anpassungen auf diese Weise in das Betriebssystem ein. In diesem Fall ist eine der Anpassungen die Integration von MicroPython als Laufzeitumgebung für eure Python-Programme. Sobald ihr die microSD-Karte erstellt habt, kann der LEGO® Mindstorms® EV3 davon booten (also starten) und die MicroPython-Umgebung ist direkt einsatzbereit. Der geringe zusätzliche Aufwand lohnt sich also, da der Rest anschließend deutlich einfacher wird.</p>
<p style="text-align: justify;">LEGO® Education gibt einige Anforderungen bzw. Tipps für die microSD-Karte. Die minimale Kapazität, also Größe, liegt bei 4 GB, die maximale bei 32 GB. Diese Art von microSD-Karten sind auch als microSDHC-Karten bekannt. Das sind heutzutage durchaus Standardkarten, die nicht mehr teuer sind. </p>
<p style="text-align: justify;">Etwas entscheidender ist die Angabe von LEGO®, dass die Application Performance der Karte A1 betragen sollte. Das bedeutet, dass die Geschwindigkeit für Anwendungen (Applications, Apps) eine Mindest-schreibgeschwindigkeit von 10 Mbyte/s garantiert. Insbesondere gibt es dabei Untergrenzen für den zufälligen Zugriff auf Speicherbereiche einer microSD-Karte, wie sie bei der Nutzung mit Anwendungen häufig auftreten. Der zufällige Zugriff auf einen Speicherbereich ist bei Speicherkarten wichtig, auf denen Anwendungen laufen oder die Anwendungen als Datenspeichern nutzen. Zufällig bedeutet hier, dass ein Speicherbereich gelesen wird, zum Beispiel um eine Datei zu öffnen oder zu lesen. Anschließend muss etwas in eine andere Datei abgespeichert werden, die sich in einem anderen Speicherbereich befindet. Bei Videos ist das zum Beispiel nicht so extrem, denn eine Videodatei befindet sich immer auf einem zusammenhängenden Stück Speicherbereich. Zudem wird ein Video in der Regel sequentiell abgespielt. Der Speicherbereich kann als Stück für Stück von vorne nach hinten gelesen werden. Sprünge sind nicht so oft vorhanden, wie das bei Anwendungen der Fall ist. </p>
<p style="text-align: justify;">Mit der Application Performance ist also nicht die Geschwindigkeitsklasse (Speed Class) 2, 4, 6 oder 10, die etwas veraltet ist, aber immer noch von vielen Herstellern benutzt wird, gemeint. Ebenso wenig bezieht sich die Angabe auf die Video-Geschwindigkeitsklasse (Video Speed Class) V6, V10, V30 oder V90.</p>
<p style="text-align: justify;">Wenn ihr kein Risiko eingehen wollt, empfehlen wir euch eine microSD-Karte mit der Einstufung A1. Für einen ersten Test reicht aber sicherlich auch eine etwas ältere Karte, die vielleicht noch in der Schublade auf ihren Einsatz wartet.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_13">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_13  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_10  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h5>Etcher zum Erstellen der microSD-Karte</h5>
<p style="text-align: justify;">Wir nutzen zum Erstellen von microSD-Karten das Programm <a href="https://www.balena.io/etcher/" title="Download von Etcher">Etcher</a> (balenaEtcher). Das Tool hat eine sehr einfache Oberfläche und ist dadurch leicht zu bedienen. Die Schritte zum Aufspielen (flashen) des Images mit MicroPython sind schnell erklärt. Zuerst wählt ihr über die Schaltfläche „Select image“ die Datei aus, die auf die microSD-Karte aufgespielt werden soll. Das ist die Datei, die ihr von LEGO® Education herunterladen könnt. Die zip-Datei muss dafür nicht entpackt werden, das macht Etcher automatisch. Anschließend müsst ihr das Laufwerk mit eurer microSD-Karte auswählen. <br />Wenn ihr die Karte vor dem Start von Etcher in den Kartenleser eingelegt habt und nur eine microSD-Karte eingelegt ist, kann es sein, dass Etcher das richtige Laufwerk automatisch ausgewählt hat. Kontrolliert das aber zur Sicherheit trotzdem noch einmal, da der Inhalt der ausgewählten Karte überschrieben wird. Über die Schaltfläche „Select drive“ könnt ihr das Laufwerk auswählen. Im letzten Schritt klickt ihr die Schaltfläche „Flash!“ an. Dann beginnt Etcher damit, das Image auf die microSD-Karte aufzuspielen. Je nachdem wie schnell die microSD-Karte und der Kartenleser sind, kann der ganze Vorgang kann einige Zeit in Anspruch nehmen. Nach dem Aufspielen des Images führt Etcher eine Verifikation durch. Dabei wird überprüft, ob alle Daten korrekt auf die microSD-Karte geschrieben wurden. Wenn die Meldung erscheint, dass der Vorgang abgeschlossen wurde, könnte ihr die microSD-Karte entfernen.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_14">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_14  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_gallery et_pb_gallery_1  et_pb_bg_layout_light et_pb_slider et_pb_gallery_fullwidth">
				<div class="et_pb_gallery_items et_post_gallery clearfix" data-per_page="4"><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_1_0"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/07/1.-Etcher-Startseite.png" title="Die Startseite von Etcher">
					<img loading="lazy" decoding="async" width="802" height="507" src="https://www.brickobotik.de/wp-content/uploads/2019/07/1.-Etcher-Startseite.png" alt="Die Startseite von Etcher" class="wp-image-3890" srcset="https://www.brickobotik.de/wp-content/uploads/2019/07/1.-Etcher-Startseite.png 802w, https://www.brickobotik.de/wp-content/uploads/2019/07/1.-Etcher-Startseite-600x379.png 600w" sizes="(max-width: 802px) 100vw, 802px" />
					
				</a>
				</div></div><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_1_1"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/07/2.-belanaEtcher-Select-Image.png" title="Klick auf &quot;Select Image&quot;">
					<img loading="lazy" decoding="async" width="802" height="507" src="https://www.brickobotik.de/wp-content/uploads/2019/07/2.-belanaEtcher-Select-Image.png" alt="Klick auf &quot;Select Image&quot;" class="wp-image-3891" srcset="https://www.brickobotik.de/wp-content/uploads/2019/07/2.-belanaEtcher-Select-Image.png 802w, https://www.brickobotik.de/wp-content/uploads/2019/07/2.-belanaEtcher-Select-Image-600x379.png 600w" sizes="(max-width: 802px) 100vw, 802px" />
					
				</a>
				</div></div><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_1_2"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/07/3.-Etcher-Auswahl-Image.png" title="Auswahl der zip.-Datei">
					<img loading="lazy" decoding="async" width="757" height="464" src="https://www.brickobotik.de/wp-content/uploads/2019/07/3.-Etcher-Auswahl-Image.png" alt="Auswahl der zip.-Datei" class="wp-image-3892" srcset="https://www.brickobotik.de/wp-content/uploads/2019/07/3.-Etcher-Auswahl-Image.png 757w, https://www.brickobotik.de/wp-content/uploads/2019/07/3.-Etcher-Auswahl-Image-600x368.png 600w" sizes="(max-width: 757px) 100vw, 757px" />
					
				</a>
				</div></div><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_1_3"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/07/4.-Etcher-Select-Drive-Auswahl-sdKarte.png" title="Auswahl des Laufwerks">
					<img loading="lazy" decoding="async" width="802" height="507" src="https://www.brickobotik.de/wp-content/uploads/2019/07/4.-Etcher-Select-Drive-Auswahl-sdKarte.png" alt="Auswahl des Laufwerks" class="wp-image-3893" srcset="https://www.brickobotik.de/wp-content/uploads/2019/07/4.-Etcher-Select-Drive-Auswahl-sdKarte.png 802w, https://www.brickobotik.de/wp-content/uploads/2019/07/4.-Etcher-Select-Drive-Auswahl-sdKarte-600x379.png 600w" sizes="(max-width: 802px) 100vw, 802px" />
					
				</a>
				</div></div><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_1_4"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/07/5.-Etcher-Select-Drive.png" title="Kontrolle des Laufwerks">
					<img loading="lazy" decoding="async" width="802" height="507" src="https://www.brickobotik.de/wp-content/uploads/2019/07/5.-Etcher-Select-Drive.png" alt="Kontrolle des Laufwerks" class="wp-image-3894" srcset="https://www.brickobotik.de/wp-content/uploads/2019/07/5.-Etcher-Select-Drive.png 802w, https://www.brickobotik.de/wp-content/uploads/2019/07/5.-Etcher-Select-Drive-600x379.png 600w" sizes="(max-width: 802px) 100vw, 802px" />
					
				</a>
				</div></div><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_1_5"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/07/6.-Etcher-Flash.png" title="Klick auf &quot;Flash!&quot;">
					<img loading="lazy" decoding="async" width="802" height="507" src="https://www.brickobotik.de/wp-content/uploads/2019/07/6.-Etcher-Flash.png" alt="Klick auf &quot;Flash!&quot;" class="wp-image-3895" srcset="https://www.brickobotik.de/wp-content/uploads/2019/07/6.-Etcher-Flash.png 802w, https://www.brickobotik.de/wp-content/uploads/2019/07/6.-Etcher-Flash-600x379.png 600w" sizes="(max-width: 802px) 100vw, 802px" />
					
				</a>
				</div></div></div></div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_15">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_15  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_11  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h3>2. Installation von Visual Studio Code</h3>
<p style="text-align: justify;">Und was ist Visual Studio Code schon wieder? Gute Frage, die wir euch gleich beantworten möchten. Visual Studio Code, gerne als VS Code abgekürzt, ist eine professionelle Entwicklungsumgebung (englisch: Integrated Development Environment, IDE), die von vielen Softwareentwickler*innen genutzt wird. Damit steht euch eine vielfach genutzte und in der Community gelobte Anwendung zur Verfügung, um eure Python-Programme für MicroPython zu entwickeln.</p>
<p style="text-align: justify;">Die Anwendung könnt ihr ganz einfach <a href="https://code.visualstudio.com/" title="Download von Visual Studio Code">von dieser Website herunterladen</a>. Ein weiterer großer Vorteil von VS Code ist, dass die Anwendung für Windows, macOS und Linux zur Verfügung steht. Auf der verlinkten Website könnt ihr euer Betriebssystem auswählen, auf Download klicken und müsst dann einen Moment warten. Das Paket ist circa 50 MB groß. Startet die Installation und wählt die Standardeinstellungen, die euch vorgeschlagen werden. Diese sind für den aktuellen Zweck gut vorbelegt und müssen nicht zwingend geändert werden.</p>
<p style="text-align: justify;">Ist die Installation abgeschlossen, könnt ihr VS Code starten. Euch sollte ein Startbildschirm wie in der Abbildung unten begrüßen. Falls die Anwendung auf Englisch ist, könnt ihr sie recht einfach über eine sogenannte Erweiterung (Extension) auf Deutsch umstellen. Das zeigen wir in der kurzen Animation.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_16">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_16  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_image et_pb_image_1">
				
				
				
				
				<a href="https://www.brickobotik.de/wp-content/uploads/2020/04/vscode-german-language-pack.gif" class="et_pb_lightbox_image" title=""><span class="et_pb_image_wrap "><img loading="lazy" decoding="async" width="1024" height="768" src="https://www.brickobotik.de/wp-content/uploads/2020/04/vscode-german-language-pack.gif" alt="" title="" class="wp-image-5809" /></span></a>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_17">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_17  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_12  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="text-align: justify;">Die Installation der Entwicklungsumgebung ist damit abgeschlossen. Ein Programm erstellen könnt ihr, sobald MicroPython innerhalb von VS Code installiert ist. Da die Umgebung aber nicht standardmäßig bei der Installation von VS Code mit installiert wird, ist das der nächste Schritt.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_18">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_18  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_gallery et_pb_gallery_2  et_pb_bg_layout_light et_pb_slider et_pb_gallery_fullwidth">
				<div class="et_pb_gallery_items et_post_gallery clearfix" data-per_page="4"><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_2_0"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/07/1.-VS-Code-Setup.png" title="VS Code Setup">
					<img loading="lazy" decoding="async" width="499" height="387" src="https://www.brickobotik.de/wp-content/uploads/2019/07/1.-VS-Code-Setup.png" class="wp-image-3897" />
					
				</a>
				</div></div><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_2_1"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/07/2.-Visual-Studio-Code-Startbildschrim.png" title="Visual Studio Code Startbildschrim">
					<img loading="lazy" decoding="async" width="1024" height="768" src="https://www.brickobotik.de/wp-content/uploads/2019/07/2.-Visual-Studio-Code-Startbildschrim.png" class="wp-image-3898" srcset="https://www.brickobotik.de/wp-content/uploads/2019/07/2.-Visual-Studio-Code-Startbildschrim.png 1024w, https://www.brickobotik.de/wp-content/uploads/2019/07/2.-Visual-Studio-Code-Startbildschrim-600x450.png 600w" sizes="(max-width: 1024px) 100vw, 1024px" />
					
				</a>
				</div></div><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_2_2"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/07/3.-Visual-Studio-Code.png" title="Visual Studio Code">
					<img loading="lazy" decoding="async" width="1024" height="768" src="https://www.brickobotik.de/wp-content/uploads/2019/07/3.-Visual-Studio-Code.png" class="wp-image-3899" srcset="https://www.brickobotik.de/wp-content/uploads/2019/07/3.-Visual-Studio-Code.png 1024w, https://www.brickobotik.de/wp-content/uploads/2019/07/3.-Visual-Studio-Code-600x450.png 600w" sizes="(max-width: 1024px) 100vw, 1024px" />
					
				</a>
				</div></div><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_2_3"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/07/4.-Language-Pack-Visiual-Studio-Code.png" title="Language Pack Visiual Studio Code">
					<img loading="lazy" decoding="async" width="1024" height="768" src="https://www.brickobotik.de/wp-content/uploads/2019/07/4.-Language-Pack-Visiual-Studio-Code.png" class="wp-image-3900" srcset="https://www.brickobotik.de/wp-content/uploads/2019/07/4.-Language-Pack-Visiual-Studio-Code.png 1024w, https://www.brickobotik.de/wp-content/uploads/2019/07/4.-Language-Pack-Visiual-Studio-Code-600x450.png 600w" sizes="(max-width: 1024px) 100vw, 1024px" />
					
				</a>
				</div></div><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_2_4"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/07/5.-Visual-Studio-Code-Deutsch.png" title="Visual Studio Code Deutsch">
					<img loading="lazy" decoding="async" width="1024" height="768" src="https://www.brickobotik.de/wp-content/uploads/2019/07/5.-Visual-Studio-Code-Deutsch.png" class="wp-image-3902" srcset="https://www.brickobotik.de/wp-content/uploads/2019/07/5.-Visual-Studio-Code-Deutsch.png 1024w, https://www.brickobotik.de/wp-content/uploads/2019/07/5.-Visual-Studio-Code-Deutsch-600x450.png 600w" sizes="(max-width: 1024px) 100vw, 1024px" />
					
				</a>
				</div></div></div></div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_19">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_19  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_13  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h3>3. Installation von MicroPython</h3>
<p style="text-align: justify;">MicroPython ist eine sogenannte Erweiterung für Visual Studio Code. Mit einer Erweiterung kann, wir der Name vermuten lässt, eine Funktion zu VS Code hinzugefügt werden. Auf diese Weise hat die Community, die VS Code nutzt, die Möglichkeit, den Funktionsumfang zu erweitern, ohne eine komplett neue Entwicklungsumgebung erstellen zu müssen. Das ist sehr praktisch und wird für viele Zwecke ausgiebig genutzt.</p>
<p style="text-align: justify;">Zur Installation von Erweiterungen müsst ihr zuerst auf die Schaltfläche „Erweiterungen“ in VS Code klicken. Wir haben das in der Abbildung markiert. Danach könnt ihr im Eingabefeld oben „EV3 MicroPython“ eingeben. Es stehen dann einige Erweiterungen zur Auswahl. Wie ihr vielleicht schon vermutet habt, wählt ihr diejenige aus, die LEGO® Mindstorms® EV3 im Namen trägt. Über die kleine grüne Schaltfläche „Installieren“ könnt ihr die Erweiterung dann zu VS Code hinzufügen. <br />Wenn VS Code dabei bemerkt, dass zum Ausführen noch weitere Erweiterungen benötigt werden, dann werden diese Abhängigkeiten (Dependencies) automatisch mit installiert. Die Erweiterung „ev3dev-browser“ ist so ein Kandidat. Sehr wahrscheinlich wird diese Erweiterung ebenfalls installiert. Trotzdem sollte der Vorgang nicht viel Zeit in Anspruch nehmen. Anschließend müsst ihr zwingend VS Code neu starten, das Programm also einfach schließen und noch einmal öffnen. Dann ist VS Code inklusive der MicroPython-Erweiterung bereit.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_20">
				<div class="et_pb_column et_pb_column_1_2 et_pb_column_20  et_pb_css_mix_blend_mode_passthrough">
				
				
				
				
				<div class="et_pb_module et_pb_image et_pb_image_2">
				
				
				
				
				<span class="et_pb_image_wrap "><img loading="lazy" decoding="async" width="379" height="768" src="https://www.brickobotik.de/wp-content/uploads/2019/07/1.-VS-Code-Erweiterung.png" alt="" title="" srcset="https://www.brickobotik.de/wp-content/uploads/2019/07/1.-VS-Code-Erweiterung.png 379w, https://www.brickobotik.de/wp-content/uploads/2019/07/1.-VS-Code-Erweiterung-148x300.png 148w" sizes="(max-width: 379px) 100vw, 379px" class="wp-image-3913" /></span>
			</div>
			</div><div class="et_pb_column et_pb_column_1_2 et_pb_column_21  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_image et_pb_image_3">
				
				
				
				
				<span class="et_pb_image_wrap "><img loading="lazy" decoding="async" width="383" height="768" src="https://www.brickobotik.de/wp-content/uploads/2019/07/2.-VS-Code-ERweiterung-MicroPython.png" alt="" title="" class="wp-image-3905" /></span>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_21">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_22  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_image et_pb_image_4">
				
				
				
				
				<a href="https://www.brickobotik.de/wp-content/uploads/2020/04/vscode-ev3-micropython-extension.gif" class="et_pb_lightbox_image" title=""><span class="et_pb_image_wrap "><img loading="lazy" decoding="async" width="1024" height="768" src="https://www.brickobotik.de/wp-content/uploads/2020/04/vscode-ev3-micropython-extension.gif" alt="" title="" class="wp-image-5813" /></span></a>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_22">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_23  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_14  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Ein erster Testlauf</h1>
<p style="text-align: justify;">Damit ihr sichergehen könnt, dass alles korrekt funktioniert, solltet ihr einen kleinen Test durchführen. Zunächst legt ihr dafür die vorbereitete microSD-Karte in den LEGO® Mindstorms® EV3 ein und startet den EV3-Brick. Falls ihr das schon in einem der vorherigen Schritte gemacht habt, ist das auch in Ordnung. Hauptsache ihr testet, ob mit der Karte alles in Ordnung ist. Wenn der EV3 startet, wird von der microSD-Karte gebootet. Dieser Vorgang kann eine Weile dauern. Habt einfach Geduld. Beim Starten blinken die LEDs bei den Tasten des EV3-Bricks orange. Ist der Startprozess komplett abgeschlossen, leuchten die Tasten dauerhaft grün.</p>
<p style="text-align: justify;">Wenn der EV3-Brick erfolgreich gestartet ist, könnt ihr testen, ob in VS Code alles so funktioniert, dass Python-Programme erstellt und auf den EV3-Brick übertragen werden können. Das machen wir im <a href="micropython-praktikum-1-erstellen-eines-projekts/" title="1. Praktikum MicroPython">nächsten Artikel</a>.</p></div>
			</div>
			</div>
				
				
				
				
			</div>
				
				
			</div>
<p>Der Beitrag <a href="https://www.brickobotik.de/micropython-installationsanleitung/">MicroPython – Installationsanleitung</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.brickobotik.de/micropython-installationsanleitung/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
			</item>
		<item>
		<title>MicroPython ­­– LEGO® Education öffnet seine Plattform</title>
		<link>https://www.brickobotik.de/micropython-lego-education-oeffnet-seine-plattform/</link>
					<comments>https://www.brickobotik.de/micropython-lego-education-oeffnet-seine-plattform/#respond</comments>
		
		<dc:creator><![CDATA[Dr. Fabian Deitelhoff]]></dc:creator>
		<pubDate>Thu, 24 Oct 2019 06:00:03 +0000</pubDate>
				<category><![CDATA[Programmiersprachen]]></category>
		<category><![CDATA[LEGO Mindstorms EV3]]></category>
		<category><![CDATA[MicroPython]]></category>
		<category><![CDATA[Python 3]]></category>
		<category><![CDATA[SPIKE™ Prime;]]></category>
		<guid isPermaLink="false">https://www.brickobotik.de/?p=3859</guid>

					<description><![CDATA[<p>Der Beitrag <a href="https://www.brickobotik.de/micropython-lego-education-oeffnet-seine-plattform/">MicroPython ­­– LEGO® Education öffnet seine Plattform</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<div class="et_pb_section et_pb_section_2 et_section_regular" >
				
				
				
				
				
				
				<div class="et_pb_row et_pb_row_23">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_24  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_15  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="text-align: justify;">Die LEGO®-Mindstorms®-Reihe erfreut sich seit etlichen Jahren großer Beliebtheit und zwar nicht erst mit dem LEGO® Mindstorms® EV3, sondern bereits mit seinem Vorgänger, dem LEGO® Mindstorms® NXT. Beide werden sehr aktiv in Schulen und Wettbewerben wie der World Robot Olympiad (WRO) und der FIRST LEGO League (FLL) eingesetzt. Wir haben insbesondere mit dem EV3 etliche Jahre Erfahrung in Kursen und Workshops und können nur bestätigen, dass es eine gute Plattform ist, um damit den Einstieg in die Konstruktion von Robotern und deren Programmierung zu wagen.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_24">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_25  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_16  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h2>Die lange Historie zusätzlicher Programmiersprachen</h2>
<p style="text-align: justify;">Die LEGO®-Mindstorms®-Reihe ist zudem für die visuellen Programmiersprachen bekannt, die LEGO® Education in Zusammenarbeit mit National Instruments speziell dafür entwickelt hat. Beim NXT heißt die Sprache NXT-G, beim EV3 sehr ähnlich EV3-G. Das G steht in beiden Fällen für „graphical“ oder „grafisch“. Diese Sprachen sind durchaus gelungen und für den Einstieg in die Welt der Programmierung eine gute Wahl. Wer viel mit den Plattformen arbeitet und schon einiges an Erfahrung im Programmieren gesammelt hat, möchte aber häufig mächtigere Sprachen einsetzen. Damit sind in der Regel textbasierte Programmiersprachen gemeint. Beispiele dafür sind c4ev3 (Programmiersprache C), LeJOS (Programmiersprache Java) und MonoBrick (Programmiersprache C#). Bisher wurden diese von der Community zur Verfügung gestellt. Dass es Bedarf an diesen Sprachen gibt, zeigen die aktiven Communities. Vor einiger Zeit haben wir für euch daher einen <a href="https://www.brickobotik.de/programmiersprachen-fuer-lego-robotik-sets/">eigenen Artikel erstellt</a>, der zahlreiche Programmiersprachen und Plattformen für LEGO®-Robotik-Sets vorstellt. Wir aktualisieren diesen Artikel kontinuierlich.</p>
<p style="text-align: justify;">Uns wundert es schon seit einigen Jahren, dass LEGO® Education nicht früher auf diesen Bedarf reagiert hat. Eine eigene textbasierte Programmiersprache zu entwickeln, wäre sicherlich keine gute Idee gewesen. Oder zumindest eine aufwändige, denn eine neue Programmiersprache zu entwickeln ist zeitaufwändig, fehleranfällig und birgt das Risiko, dass das Endresultat in der Community nicht gut ankommt bzw. nicht besser ist als bereits vorhandene Sprachen. Eine bereits existierende Programmiersprache zu unterstützen, liegt aber sehr wohl im Bereich des Möglichen.</p>
<p style="text-align: justify;"></div>
			</div><div class="et_pb_module et_pb_text et_pb_text_17  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h4 style="text-align: justify;">Python für LEGO® Education Roboter</h4>
<p style="text-align: justify;"><a href="https://www.brickobotik.de/python-fuer-den-lego-mindstorms-ev3/" title="News-Artikel über MicroPython für den EV3">Wie wir euch bereits berichtet haben</a>, ist LEGO® Education jetzt einen richtigen und wichtigen Schritt in diese Richtung gegangen: Der LEGO® Mindstorms® EV3 ist nun auch mit der textuellen Programmiersprache Python programmierbar und auch für den SPIKE™ Prime wurde die Plattform MicroPython als zugrunde liegendes System angekündigt, das die Programme von Benutzer*innen ausführt und die Hardware ansteuert.</p>
<p style="text-align: justify;">In diesem Artikel schauen wir uns daher an, was MicroPython ist und worauf es basiert. Im nächsten Artikel geht es dann um die Installation und unseren ersten Eindruck. In nachfolgenden Artikeln fokussieren wir uns darauf, wie Programme für den LEGO® Mindstorms® EV3 in Python geschrieben werden können.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_25">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_26  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_18  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h2>Was ist MicroPython?</h2>
<p style="text-align: justify;">MicroPython ist eine schlanke und effizient implementierte Version von Python 3. Enthalten ist eine kleine Untermenge der Python 3 Programmiersprache. MicroPython ist optimiert, um auf Mikrocontrollern zu laufen, die begrenzte Ressourcen besitzen was zum Beispiel Prozessorleistung und Speicher angeht. Trotzdem werden zahlreiche Features mitgeliefert, die das Entwickeln für die Plattform sehr angenehm gestalten. Dazu gehört zum Beispiel eine interaktive Eingabe, REPL genannt, Exceptions und ein Garbage Collector. Trotzdem benötigt MicroPython nur 256 KB Speicherplatz und 16 KB Arbeitsspeicher. Python ist übrigens eine bekannte Programmiersprache, die oft als erste textbasierte Sprache genutzt wird, um grundsätzliche Mechanismen des Programmierens zu lehren. Das ist ein weiterer Grund, warum wir die Wahl von Python bzw. MicroPython begrüßen.</p>
<p style="text-align: justify;">Die genannten Features von MicroPython sind zwar weniger relevant für die Entwicklung von Programmen für den LEGO® Mindstorms® EV3 oder andere LEGO®-Plattformen, machen MicroPython aber dennoch zu einer hervorragenden Plattform, um von Benutzer*innen geschriebene Programme auszuführen. Der Quelltext von MicroPython ist Open Source, was bedeutet, dass er öffentlich zur Verfügung steht, einsehbar ist und dass die Community Änderungen daran vornehmen kann. Eine gute Voraussetzung, um in der Zukunft von vielen Personen weiterentwickelt zu werden. Aktuell ist die Plattform sehr aktiv. Die erste Version erschien im Mai 2014 &#8211; die aktuelle Version 1.10, die beim Schreiben dieses Artikels zum Download bereitstand, ist vom Januar 2019. Das spricht für viele Updates mit Fehlerbehebungen und neuen Funktionen: Ein weiterer Pluspunkt.</p>
<p style="text-align: justify;">Um ein paar Missverständnissen vorzubeugen: MicroPython ist ein angepasstes Betriebssystem für den LEGO® Mindstorms® EV3. Es handelt sich dabei nicht um die Firmware. Diese wird komplett von LEGO® Education bereitgestellt. Zur Firmware haben wir einen <a href="https://www.brickobotik.de/lego-mindstorms-ev3-die-bisherigen-firmware-versionen/">gesonderten Artikel</a> für euch erstellt. Das angepasste Betriebssystem wird auf eine microSD-Karte kopiert, sodass der EV3 davon starten kann. Der Mechanismus ähnelt einem sogenannten Dual Boot, bei dem zum Beispiel die Betriebssysteme Windows und Linux parallel auf einem PC oder Laptop installiert werden. Wenn die microSD-Karte entfernt wird, dann startet der EV3 wieder das von LEGO® Education bereitgestellte Betriebssystem, das sich direkt auf dem EV3 befindet.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_26">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_27  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_19  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h2>Aber wozu das Ganze?</h2>
<p style="text-align: justify;">Wir bekommen recht oft die Frage gestellt, wozu andere Programmiersprachen als die von LEGO® bereitgestellten genutzt werden sollten. Für den Einstieg sind die grafischen Sprachen von LEGO® Education eine gute Wahl. Irgendwann ist aber genug Programmiererfahrung vorhanden, sodass textbasierte Programmiersprachen in den Fokus rücken. Damit können komplexere Programme mit weniger Programmzeilen erstellt werden. Wer eine textbasierte Programmiersprache beherrscht, kann dadurch also einen kleinen Vorteil gewinnen. Die Möglichkeiten der Hardware, zum Beispiel der Sensoren und Motoren, bleiben allerdings gleich. Es geht eher um die Art und Weise, wie ein Programm erstellt wird.</p>
<p style="text-align: justify;">Weitere Gründe haben wir im Artikel zu den Programmiersprachen für LEGO®-Robotik-Sets zusammengetragen. Wie immer gilt aber: Nutzt bitte die Programmiersprache, die euch gefällt und in der ihr euch auskennt und wohlfühlt &#8211; egal ob grafisch oder textbasiert. Das ist die beste Voraussetzung, um Spaß beim Programmieren zu haben. Dann lernt ihr am meisten und habt die größten Erfolge.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_27">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_28  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_20  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h2 style="text-align: justify;">Unsere erste Einschätzung</h2>
<p style="text-align: justify;">Auf den ersten Blick sieht MicroPython sehr vielversprechend aus. Die Plattform ist schon lange verfügbar, wird von vielen eingesetzt und ist damit etabliert. Uns freut es sehr, dass LEGO® Education seine LEGO®-Robotik-Sets mit diesem Schritt noch weiter öffnet und zudem auf eine bereits vorhandene Plattform wie MicroPython setzt. Bei anderen Herstellern ist es nicht ungewöhnlich, dass stattdessen eine eigene Plattform erstellt wird, obwohl das oft völlig unnötig ist und zu Inkompatibilitäten führt.</p>
<p style="text-align: justify;">Ob MicroPython auch auf den zweiten Blick überzeugen kann, wird sich zeigen. Ebenso, ob die Community diese weitere Möglichkeit annimmt. Darüber hinaus sind wir ebenfalls gespannt, ob Python dadurch in Zukunft eine größere Rolle bei Wettbewerben spielen wird.</p>
<p style="text-align: justify;">Wir freuen uns, dass hier eine Plattform gefördert wird, die unabhängig vom Betriebssystem zum Einsatz kommen kann. Denn sowohl MicroPython als auch die von LEGO® Education präferierte Entwicklungsumgebung Visual Studio Code sind unabhängig vom Betriebssystem. Beide laufen sowohl auf Windows als auch auf macOS und Linux &#8211; ein weiterer sehr großer Pluspunkt.</p>
<p style="text-align: justify;">Einen genaueren Blick auf die technischen Details von MicroPython werfen wir in kommenden Artikeln wie z.B. der Installationsanleitung und in unseren Praktikums-Aufgaben.</p></div>
			</div>
			</div>
				
				
				
				
			</div>
				
				
			</div>
<p>Der Beitrag <a href="https://www.brickobotik.de/micropython-lego-education-oeffnet-seine-plattform/">MicroPython ­­– LEGO® Education öffnet seine Plattform</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.brickobotik.de/micropython-lego-education-oeffnet-seine-plattform/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Python für den LEGO® Mindstorms® EV3</title>
		<link>https://www.brickobotik.de/python-fuer-den-lego-mindstorms-ev3/</link>
					<comments>https://www.brickobotik.de/python-fuer-den-lego-mindstorms-ev3/#respond</comments>
		
		<dc:creator><![CDATA[Vera Straetmanns]]></dc:creator>
		<pubDate>Fri, 11 Oct 2019 06:00:49 +0000</pubDate>
				<category><![CDATA[Programmiersprachen]]></category>
		<category><![CDATA[EV3]]></category>
		<category><![CDATA[LEGO]]></category>
		<category><![CDATA[Lego Mindstorms]]></category>
		<category><![CDATA[LEGO Mindstorms EV3]]></category>
		<category><![CDATA[MicroPython]]></category>
		<category><![CDATA[Mikrocontroller]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Python 3]]></category>
		<guid isPermaLink="false">https://www.brickobotik.de/?p=4241</guid>

					<description><![CDATA[<p>Der Beitrag <a href="https://www.brickobotik.de/python-fuer-den-lego-mindstorms-ev3/">Python für den LEGO® Mindstorms® EV3</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><div class="et_pb_section et_pb_section_3 et_section_regular" >
				
				
				
				
				
				
				<div class="et_pb_row et_pb_row_28">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_29  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_21  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="text-align: justify;">Nachdem LEGO® Education bisher nur die grafische Programmiersprache EV3-G zum Programmieren des LEGO® Mindstorms® EV3 angeboten hat, gibt es ab jetzt auch die Möglichkeit, den EV3 mit Python zu programmieren. Python ist eine textbasierte Programmiersprache und ermöglicht daher komplexere Programme mit weniger Programmzeilen zu realisieren.</p></div>
			</div><div class="et_pb_module et_pb_text et_pb_text_22  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Micropython: Python für Mikrocontroller</h1>
<p style="text-align: justify;">Um den EV3 in Python programmieren zu können, bietet LEGO® <a href="https://education.lego.com/en-us/product-resources/mindstorms-ev3/teacher-resources/python-for-ev3" title="Link zum Download von Micropython für den EV3">auf seiner Website</a> den Download von EV3 Micropython an. <a href="https://micropython.org/" title="Website von Micropython">Micropython</a> ist eine schlanke und effizient implementierte Version von Python 3, die für Nutzung auf Mikrocontrollern optimiert ist. Dazu bietet LEGO® eine 57-seite Dokumentation an. Hier wird alles wichtige erklärt: Von der Installation über das Erstellen und Ausführen von Programmen bis hin zu einigen Beispielprogrammen.</p>
<p style="text-align: justify;">Im Prinzip war die Programmierung des EV3 mit anderen Programmiersprachen als EV3-G natürlich auch schon vorher möglich. Allerdings wird es mit der „offiziellen“ Version von Lego® jetzt auch für Einsteiger*innen deutlich einfacher, Python auf dem EV3 zu nutzen. Da EV3 Micropython von LEGO® Education selbst entwickelt und auf den EV3 zugeschnitten wurde, dürfte es außerdem deutlich ausgereifter als bisherige „inoffizielle“ Versionen sein.</p></div>
			</div><div class="et_pb_module et_pb_text et_pb_text_23  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Micropython für EV3 auf brickobotik</h1>
<p style="text-align: justify;">Wir begrüßen es sehr, dass LEGO® Education mit diesem Schritt seine Robotik-Plattformen öffnet und dafür Micropython als Plattform gewählt hat. In der kommenden Zeit gibt es daher mehrere Artikel für euch, die sich mit der Nutzung von Micropython auf dem EV3 befassen.</p></div>
			</div>
			</div>
				
				
				
				
			</div>
				
				
			</div></p>
<p>Der Beitrag <a href="https://www.brickobotik.de/python-fuer-den-lego-mindstorms-ev3/">Python für den LEGO® Mindstorms® EV3</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.brickobotik.de/python-fuer-den-lego-mindstorms-ev3/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>c4ev3 – Praktikum 5: Endlosschleifen</title>
		<link>https://www.brickobotik.de/c4ev3-praktikum-5-endlosschleifen/</link>
					<comments>https://www.brickobotik.de/c4ev3-praktikum-5-endlosschleifen/#comments</comments>
		
		<dc:creator><![CDATA[Felix Krawczyk]]></dc:creator>
		<pubDate>Thu, 11 Apr 2019 05:30:39 +0000</pubDate>
				<category><![CDATA[Lern- & Lehrmaterialien]]></category>
		<category><![CDATA[Programmiersprachen]]></category>
		<category><![CDATA[Aufgabe 5]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[c4ev3]]></category>
		<category><![CDATA[LEGO Mindstorms EV3]]></category>
		<category><![CDATA[Lehre]]></category>
		<category><![CDATA[Praktikum]]></category>
		<category><![CDATA[Programmieren]]></category>
		<guid isPermaLink="false">https://www.brickobotik.de/?p=1824</guid>

					<description><![CDATA[<p>In der fünften Praktikumsaufgabe lernen wir eine Sonderform der Schleife kennen: die Endlosschleife. Damit kann der EV3 ewig im Quadrat fahren.</p>
<p>Der Beitrag <a href="https://www.brickobotik.de/c4ev3-praktikum-5-endlosschleifen/">c4ev3 – Praktikum 5: Endlosschleifen</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><div class="et_pb_section et_pb_section_4 et_section_regular" >
				
				
				
				
				
				
				<div class="et_pb_row et_pb_row_29">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_30  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_24  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="text-align: justify;">Nach den &#8222;normalen&#8220; Schleifen im letzten Praktikum, lernen wir in diesem Praktikum eine Sonderform der Schleife kennen, welche es so nur auf Mikrocontrollern gibt: die Endlosschleife. Endlosschleifen werden am häufigsten in eingebetteten Systemen eingesetzt und dort meist auf Mikrocontrollern, wie sie im EV3 verbaut sind. <br />Wenn du bisher noch kein c4ev3-Projekt in Eclipse angelegt hast, hilft dir unsere <a href="https://www.brickobotik.de/c4ev3-praktikum-1-erstellen-eines-projekts/">erste Praktikumsaufgabe</a> dabei.</p></div>
			</div><div class="et_pb_module et_pb_text et_pb_text_25  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Zweck</h1>
<p style="text-align: justify;">Endlosschleifen sind ein wichtiger Bestandteil auf Mikrocontrollern, denn häufig ist gewünscht, dass ein Roboter nach dem Einschalten ununterbrochen seinem Programm nachgeht, bis er wieder ausgeschaltet wird. <br />Dadurch kommt es aber auch zu Schwierigkeiten in der Programmierung. Ihr müsst deshalb einen Ausweg bzw. einen Endpunkt für die Schleife finden. Dies nennt man Abbruchbedingung.</p></div>
			</div><div class="et_pb_module et_pb_text et_pb_text_26  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Vorbereitung</h1>
<p style="text-align: justify;">Zur Vorbereitung erstellt ihr wie im vorherigen Praktikum zunächst ein neues c4ev3-Projekt. Wir starten wir diesmal wieder mit einem „Empty Project“-Projekt, da wir die Befehle, welche Eclipse uns vorher abgenommen hat, nun selber vertiefen wollen.</p></div>
			</div><div class="et_pb_module et_pb_text et_pb_text_27  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Aufgabe</h1>
<p style="text-align: justify;">Programmiere den Roboter so, dass er das kleine Quadrat endlos fährt. Dazu soll der EV3 10 cm vorfahren und sich um 90° drehen. Dies soll er solange wiederholen, bis die Abbruchbedingung erfüllt ist. Du musst also eine geeignete Abbruchbedingung wählen. Solltest du Schwierigkeiten bei der Auswahl haben, findest du unsere Abbruchbedingung als Anregung in den Tipps.</p>
<p style="text-align: justify;">Die Befehle, die für dieses Praktikum notwendig sind, kannst du aus der <a href="https://github.com/c4ev3/EV3-API/blob/master/commands.pdf">EV3-API</a> von c4ev3 heraussuchen, falls du sie nicht auswendig weißt. Wenn du gar nicht weiter kommst oder nicht weißt, wie du anfangen kannst, helfen dir die Tipps weiter unten vielleicht weiter. Aber versuche es erst ohne Hilfe.</p>
<p style="text-align: justify;">Die Befehle für Schleifen in einer textuellen Programmiersprache sind abhängig von der gewählten Sprache. Generell haben wir aber ein kleines Tutorial zu Schleifen für euch erstellt.</p>
<p>&nbsp;</p></div>
			</div><div class="et_pb_module et_pb_toggle et_pb_toggle_1 et_pb_toggle_item  et_pb_toggle_close">
				
				
				
				
				<h5 class="et_pb_toggle_title">Brauchst du einen Tipp?</h5>
				<div class="et_pb_toggle_content clearfix"><p style="text-align: justify;">Wenn eine Endlosschleife programmiert wird, hängt sich der EV3 auf. Darum ist es sinnvoll die Schleife mit einer externen Abbruchbedingung zu versehen. Als Abbruchbedingung könnte man zum Beispiel das Drücken einer der fünf EV3-Tasten wählen.<br />Ihr müsst hier allerdings etwas Rücksicht auf die Eigenarten der Sprache c4ev3 nehmen: Wenn z.B. das Drücken der Zurück-Taste als Abbruchbedingung definiert wird, will sich der EV3 nach zwei Durchgängen ausschalten. <br />Außerdem wird immer nur einmal in jedem Schleifendurchgang geprüft, ob die Abbruchbedingung erfüllt ist. Deshalb reicht es manchmal nicht, die Taste nur kurz zu drücken, sondern sie muss gedrückt gehalten werden, bis der Roboter das Signal registriert hat.</p></div>
			</div><div class="et_pb_module et_pb_text et_pb_text_28  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="text-align: justify;">Sollte sich der EV3 aufhängen, kann man einen Reset durchführen, indem man die mittlere und die Zurück-Taste gleichzeitig für fünf Sekunden gedrückt hält und danach loslässt. Der EV3 führt dann einen Neustart aus. </p>
<p style="text-align: justify;">Für die Aufgabe sind API-Aufrufe von c4ev3 nötig. Sie regeln, welche Befehle an den EV3 weitergeleitet werden. Wir haben das EV3-API etwas weiter oben im Text bereits verlinkt. </p></div>
			</div><div class="et_pb_module et_pb_cta_0 et_pb_promo  et_pb_text_align_center et_pb_bg_layout_dark">
				
				
				
				
				<div class="et_pb_promo_description"><div><h2 class="et_pb_module_header et-fb-editable-element et-fb-editable-element__editing" contenteditable="true" data-shortcode-id="0.2.0.3-1546810118475" data-quickaccess-id="header">ZUR LÖSUNG WEITERSCROLLEN</h2></div></div>
				
			</div><div class="et_pb_module et_pb_text et_pb_text_29  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Lösung</h1>
<p style="text-align: justify;">Das nachfolgende Listing zeigt das komplette Programm und damit auch eine mögliche Lösung.<br />Gerne könnt ihr eure Lösung mit dieser vergleichen. Wichtig ist aber, dass es hier nicht eine einzige richtige Lösung gibt. Teilt uns doch gerne mit, was ihr anders gemacht habt!</p>
<p style="text-align: justify;">Wenn ihr gar nicht weiterkommt oder keine Ideen habt, wie ihr die Aufgabe angehen sollt, könnt ihr hier die Lösung anschauen. Wir empfehlen aber, in diesem Fall die vorherigen Praktika und diese Lösung genau nachzuvollziehen, um in den folgenden Praktika wieder voll einsteigen zu können.</p></div>
			</div>[et_pb_dmb_code_snippet title=&#8220;Listing 1: Das C-Programm f&amp;amp;amp;uuml;r die f&amp;amp;amp;uuml;nfte c4ev3-Praktikumsaufgabe.&#8220; code=&#8220;I2luY2x1ZGUgPGV2My5oPgoKaW50IG1haW4odm9pZCkgewoJSW5pdEVWMygpOwoKCXdoaWxlICghQnV0dG9uSXNEb3duKEJUTlVQKSkgewoJCU9uRndkUmVnKE9VVF9CQywgMjUpOwoJCVdhaXQoU0VDXzEpOwoKCQlPZmYoT1VUX0JDKTsKCQlXYWl0KE1TXzEwMCk7CgoJCU9uRndkUmVnKE9VVF9CLCAyNSk7CgkJT2ZmKE9VVF9DKTsKCQlXYWl0KFNFQ18xKTsKCQlXYWl0KE1TXzUwMCk7CgoJCU9mZihPVVRfQkMpOwoJCVdhaXQoTVNfMTAwKTsKCX0KCglGcmVlRVYzKCk7CglyZXR1cm4gMDsKfQo=&#8220; language=&#8220;java&#8220; linenums=&#8220;on&#8220; _builder_version=&#8220;3.23.3&#8243; body_font=&#8220;||||||||&#8220; body_font_size_tablet=&#8220;51&#8243; body_line_height_tablet=&#8220;2&#8243; header_font_size_tablet=&#8220;51&#8243; header_line_height_tablet=&#8220;2&#8243;]I2luY2x1ZGUgPGV2My5oPgoKaW50IG1haW4odm9pZCkgewoJSW5pdEVWMygpOwoKCXdoaWxlICghQnV0dG9uSXNEb3duKEJUTlVQKSkgewoJCU9uRndkUmVnKE9VVF9CQywgMjUpOwoJCVdhaXQoU0VDXzEpOwoKCQlPZmYoT1VUX0JDKTsKCQlXYWl0KE1TXzEwMCk7CgoJCU9uRndkUmVnKE9VVF9CLCAyNSk7CgkJT2ZmKE9VVF9DKTsKCQlXYWl0KFNFQ18xKTsKCQlXYWl0KE1TXzUwMCk7CgoJCU9mZihPVVRfQkMpOwoJCVdhaXQoTVNfMTAwKTsKCX0KCglGcmVlRVYzKCk7CglyZXR1cm4gMDsKfQo=[/et_pb_dmb_code_snippet]
			</div>
				
				
				
				
			</div>
				
				
			</div></p>
<p>Der Beitrag <a href="https://www.brickobotik.de/c4ev3-praktikum-5-endlosschleifen/">c4ev3 – Praktikum 5: Endlosschleifen</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.brickobotik.de/c4ev3-praktikum-5-endlosschleifen/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>c4ev3 – Praktikum 6: Der Tastsensor</title>
		<link>https://www.brickobotik.de/c4ev3-praktikum-6-der-tastsensor/</link>
					<comments>https://www.brickobotik.de/c4ev3-praktikum-6-der-tastsensor/#comments</comments>
		
		<dc:creator><![CDATA[Felix Krawczyk]]></dc:creator>
		<pubDate>Thu, 11 Apr 2019 05:30:24 +0000</pubDate>
				<category><![CDATA[Lern- & Lehrmaterialien]]></category>
		<category><![CDATA[Programmiersprachen]]></category>
		<category><![CDATA[Aufgabe 6]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[c4ev3]]></category>
		<category><![CDATA[LEGO Mindstorms EV3]]></category>
		<category><![CDATA[Lehre]]></category>
		<category><![CDATA[Praktikum]]></category>
		<guid isPermaLink="false">https://www.brickobotik.de/?p=1837</guid>

					<description><![CDATA[<p>In der sechsten Praktikumsaufgabe wird der erste Sensor benutzt. Wir programmieren den EV3 so, dass er signalisiert, ob der Tastsensor gedrückt ist.</p>
<p>Der Beitrag <a href="https://www.brickobotik.de/c4ev3-praktikum-6-der-tastsensor/">c4ev3 – Praktikum 6: Der Tastsensor</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><div class="et_pb_section et_pb_section_5 et_section_regular" >
				
				
				
				
				
				
				<div class="et_pb_row et_pb_row_30">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_31  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_30  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="text-align: justify;">In diesem Praktikum kommen nun die Sensoren ins Spiel. Den Anfang macht der Tastsensor. <br />Wenn du bisher noch kein c4ev3-Projekt in Eclipse angelegt hast, hilft dir unsere <a href="https://www.brickobotik.de/c4ev3-praktikum-1-erstellen-eines-projekts/">erste Praktikumsaufgabe</a> dabei.</p></div>
			</div><div class="et_pb_module et_pb_text et_pb_text_31  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Zweck</h1>
<p style="text-align: justify;">Sensoren sind für einen Roboter das Fenster zur Außenwelt, denn sie geben ihm Informationen über seine Umgebung. Mit den entsprechenden Sensoren kann ein Roboter Farben erkennen, Entfernungen messen, auf Stöße reagieren und vieles mehr. Gerade bei automatischen Systemen sind die Informationen der Sensoren unverzichtbar.</p>
<p style="text-align: justify;">Wir beschäftigen uns als erstes mit dem Tastsensor. Dieser Sensor arbeitet mit Zuständen und signalisiert dem Roboter, ob der Sensor gedrückt ist oder losgelassen wurde.</p></div>
			</div><div class="et_pb_module et_pb_text et_pb_text_32  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Vorbereitung</h1>
<p style="text-align: justify;">Zur Vorbereitung erstellt ihr wie im vorherigen Praktikum zunächst ein neues c4ev3-Projekt. Bevor es losgehen kann, müsst ihr an eurem EV3 einen Tastsensor montieren. Dazu schließt ihr den Sensor an einen der freien Sensoranschlüsse an.</p></div>
			</div><div class="et_pb_module et_pb_text et_pb_text_33  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Aufgabe</h1>
<p style="text-align: justify;">Programmiere den Roboter so, dass er beim Starten des Programms auf Tastendruck prüft und einen Ton abspielt, falls der Tastsensor gedrückt ist. Andernfalls soll er stumm bleiben.</p>
<p style="text-align: justify;">Die Befehle, die für dieses Praktikum benötigt werden, sollen aus der <a href="https://github.com/c4ev3/EV3-API/blob/master/commands.pdf">EV3-API</a> herausgesucht werden.</p>
<p style="text-align: justify;">In einer früheren Version der c4ev3 API musste das Sound Modul nachträglich eingebunden werden. Darum prüft, ob ihr die aktuelle Version heruntergeladen habt.</p></div>
			</div><div class="et_pb_module et_pb_cta_1 et_pb_promo  et_pb_text_align_center et_pb_bg_layout_dark">
				
				
				
				
				<div class="et_pb_promo_description"><div><h2 class="et_pb_module_header et-fb-editable-element et-fb-editable-element__editing" contenteditable="true" data-shortcode-id="0.2.0.3-1546810118475" data-quickaccess-id="header">ZUR LÖSUNG WEITERSCROLLEN</h2></div></div>
				
			</div><div class="et_pb_module et_pb_text et_pb_text_34  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Lösung</h1>
<p style="text-align: justify;">Das nachfolgende Listing zeigt das komplette Programm und damit auch eine mögliche Lösung.<br />Gerne könnt ihr eure Lösung mit dieser vergleichen. Wichtig ist aber, dass es hier nicht eine einzige richtige Lösung gibt. Teilt uns doch gerne mit, was ihr anders gemacht habt!</p>
<p style="text-align: justify;">Wenn ihr gar nicht weiterkommt oder keine Ideen habt, wie ihr die Aufgabe angehen sollt, könnt ihr hier die Lösung anschauen. Wir empfehlen aber, in diesem Fall die vorherigen Praktika und diese Lösung genau nachzuvollziehen, um in den folgenden Praktika wieder voll einsteigen zu können.</p></div>
			</div>[et_pb_dmb_code_snippet title=&#8220;Listing 1: Das C-Programm f&uuml;r die sechste c4ev3-Praktikumsaufgabe.&#8220; _builder_version=&#8220;3.23.3&#8243; body_font_size_tablet=&#8220;51&#8243; body_line_height_tablet=&#8220;2&#8243; header_font_size_tablet=&#8220;51&#8243; header_line_height_tablet=&#8220;2&#8243; code=&#8220;I2luY2x1ZGUgPGV2My5oPgoKaW50IG1haW4odm9pZCkKewoJSW5pdEVWMygpOwoJLy9pbnQgaSA9IFNvdW5kU3RhdGUoKTsKCXNldEFsbFNlbnNvck1vZGUoVE9VQ0hfUFJFU1MsIE5PX1NFTixOT19TRU4sTk9fU0VOKTsKCglpZihyZWFkU2Vuc29yKElOXzEpID09IDApCgl7CgkJUGxheVRvbmUoVE9ORV9FNSwgTk9URV9XSE9MRSk7CgkJUGxheVNvdW5kKFNPVU5EX0RPVUJMRV9CRUVQKTsKCX0KCgoJRnJlZUVWMygpOwoJcmV0dXJuIDA7Cn0=&#8220;]I2luY2x1ZGUgPGV2My5oPgoKaW50IG1haW4odm9pZCkKewoJSW5pdEVWMygpOwoJLy9pbnQgaSA9IFNvdW5kU3RhdGUoKTsKCXNldEFsbFNlbnNvck1vZGUoVE9VQ0hfUFJFU1MsIE5PX1NFTixOT19TRU4sTk9fU0VOKTsKCglpZihyZWFkU2Vuc29yKElOXzEpID09IDApCgl7CgkJUGxheVRvbmUoVE9ORV9FNSwgTk9URV9XSE9MRSk7CgkJUGxheVNvdW5kKFNPVU5EX0RPVUJMRV9CRUVQKTsKCX0KCgoJRnJlZUVWMygpOwoJcmV0dXJuIDA7Cn0=[/et_pb_dmb_code_snippet]
			</div>
				
				
				
				
			</div>
				
				
			</div></p>
<p>Der Beitrag <a href="https://www.brickobotik.de/c4ev3-praktikum-6-der-tastsensor/">c4ev3 – Praktikum 6: Der Tastsensor</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.brickobotik.de/c4ev3-praktikum-6-der-tastsensor/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Robotary &#8211; und das falsche Versprechen</title>
		<link>https://www.brickobotik.de/robotary-und-das-falsche-versprechen/</link>
					<comments>https://www.brickobotik.de/robotary-und-das-falsche-versprechen/#respond</comments>
		
		<dc:creator><![CDATA[Felix Krawczyk]]></dc:creator>
		<pubDate>Mon, 18 Mar 2019 09:15:16 +0000</pubDate>
				<category><![CDATA[Lern- & Lehrmaterialien]]></category>
		<category><![CDATA[Programmiersprachen]]></category>
		<category><![CDATA[LEGO Mindstorms EV3]]></category>
		<category><![CDATA[Robotary]]></category>
		<guid isPermaLink="false">https://www.brickobotik.de/?p=2482</guid>

					<description><![CDATA[<p>Der Beitrag <a href="https://www.brickobotik.de/robotary-und-das-falsche-versprechen/">Robotary &#8211; und das falsche Versprechen</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<div class="et_pb_section et_pb_section_6 et_section_regular" >
				
				
				
				
				
				
				<div class="et_pb_row et_pb_row_31">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_32  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_35  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="text-align: justify;">Dass sich der LEGO® Mindstorms® EV3 in den unterschiedlichsten Programmiersprachen programmieren lässt, dürfte inzwischen bekannt sein. Eine Übersicht über die verschiedensten Programmiersprachen haben wir in <a href="https://www.brickobotik.de/programmiersprachen-fuer-lego-robotik-sets/" title="Übersicht über die Programmiersprachen für LEGO Robotik Sets">diesem Artikel</a> für euch angelegt. Eine dieser Sprachen ist für Apple MacBook-Nutzer besonders interessant, da sie die Apple-Programmiersprache Swift nutzt, um den EV3 zu programmieren. Diese Sprache heißt Robotary. Wir werden sie uns in diesem Artikel genauer ansehen und Vor- und Nachteile im Vergleich zu anderen Sprachen aufzeigen.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_32">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_33  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_36  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1 style="text-align: justify;">Robotary</h1>
<p style="text-align: justify;">Eigentlich sollte an dieser Stelle stehen, welche Vor- und Nachteile Robotary gegenüber den anderen Programmiersprachen für den EV3 bietet. Allerdings lief hier alles nicht so ganz reibungslos ab wie in unseren bisherigen Tests. Dazu kommt, dass Robotary eben nur auf dem Mac läuft und außerdem noch 17$ (knapp 16€) kostet. Darum ist die Investitionshürde deutlich höher als bei vielen der anderen Programmiersprachen für den EV3. Wer erwartet, dass so ein bezahltes System reibungslos läuft, wird leider enttäuscht. Aber fangen wir vorne an:</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_33">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_34  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_37  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Der Kauf und die Installation</h1>
<p style="text-align: justify;">Die Installation von Robotary ist denkbar einfach. Robotary ist eine macOS-App. Die Software ist allerdings nicht mehr im offiziellen mac-Store gelistet und muss daher über die Website gekauft werden. Danach erhaltet ihr einen Key und die Datei. Die Datei bekommt ihr nur einmal während der Kaufabwicklung, ein späterer oder erneuter Download ist nicht möglich. Ist die Datei heruntergeladen, kann Robotary quasi sofort ausgeführt werden.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_34">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_35  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_38  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1 style="text-align: justify;"><strong>Nach- und Vorteile</strong></h1>
<p style="text-align: justify;">Bluetooth oder USB-Kabel muss permanet mit demEV3 verbunden sein &#8211; die Wifi-Option ist leider nicht integriert. Die Möglichkeit, ein selbst geschriebenes Programm auf den EV3 zu laden, um die Verbindung trennen zu können, gibt es ebenfalls nicht. Es muss also permanent eine Verbindung zwischen dem Mac und dem EV3 bestehen. In unserem Test auf einem MacBook Pro 2012 mit Sierra und einem MacBook Pro 2018 mit Mojave hängt sich die Software auf, sobald ein EV3-Programm ausgeführt wird.</p>
<p style="text-align: justify;">Die positiven Berichte, die wir im Netz fanden, haben uns deshalb sehr verwundert, denn wir haben kein einziges EV3-Programm zum Laufen bekommen.<br /> Dann entdeckten wir des Rätsels Lösung: Eine Zeitreise zur macOS-Version Yosemite aus dem Jahr 2014. Mit diesem Apple-Betriebssystem läuft Robotary ohne abzustürzen. Das USB-Kabel ist dennoch auch hier unser ständiger Begleiter.</p>
<p style="text-align: justify;">Zu weit in die Vergangenheit reisen dürfen wir allerdings auch nicht, denn macOS Yosemite ist das erste Betriebssystem, mit dem die Software überhaupt läuft. Das folge System El Capitan wird auch unterstützt, aber ab macOS Sierra, das 2016 herauskam, geht wieder nichts mehr. Generell wurde es seit 2016 um die Entwickler der Programmiersprache recht still. Auf Nachfragen bei den Entwicklern per E-Mail gibt es seit Monaten keine Antwort.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_35">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_36  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_39  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Fazit</h1>
<p>Robotary ist theortisch ein schönes Produkt, aber es läuft nur auf macs, die seit über drei Jahren kein Update mehr installiert haben. Darum ist Robotary aktuell leider nicht mehr zu empfehlen und in unseren Augen auch keine 16€ wert. Aus diesem Grund wird es vorerst auch kein Praktikum für diese Sprache geben, jedenfalls nicht, bis Robotary ein funktionales Update erhält.</p>
<p>&nbsp;</p></div>
			</div>
			</div>
				
				
				
				
			</div>
				
				
			</div>
<p>Der Beitrag <a href="https://www.brickobotik.de/robotary-und-das-falsche-versprechen/">Robotary &#8211; und das falsche Versprechen</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.brickobotik.de/robotary-und-das-falsche-versprechen/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>LeJOS &#8211; Praktikum 1: Erstellen eines Projektes</title>
		<link>https://www.brickobotik.de/lejos-praktikum-1-erstellen-eines-projektes/</link>
					<comments>https://www.brickobotik.de/lejos-praktikum-1-erstellen-eines-projektes/#respond</comments>
		
		<dc:creator><![CDATA[Felix Krawczyk]]></dc:creator>
		<pubDate>Mon, 25 Feb 2019 10:19:49 +0000</pubDate>
				<category><![CDATA[Lern- & Lehrmaterialien]]></category>
		<category><![CDATA[Programmiersprachen]]></category>
		<category><![CDATA[Aufgabe 1]]></category>
		<category><![CDATA[LEGO Mindstorms EV3]]></category>
		<category><![CDATA[Lehre]]></category>
		<category><![CDATA[LeJOS]]></category>
		<category><![CDATA[Praktikum]]></category>
		<category><![CDATA[Programmierumgebung]]></category>
		<guid isPermaLink="false">https://www.brickobotik.de/?p=2275</guid>

					<description><![CDATA[<p>Der Beitrag <a href="https://www.brickobotik.de/lejos-praktikum-1-erstellen-eines-projektes/">LeJOS &#8211; Praktikum 1: Erstellen eines Projektes</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><div class="et_pb_section et_pb_section_7 et_section_regular" >
				
				
				
				
				
				
				<div class="et_pb_row et_pb_row_36">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_37  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_40  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="text-align: justify;">In diesem ersten Praktikum zeigen wir euch, wie ihr ein Projekt erstellt. Dies ist die Grundlage für alle folgenden Praktika.</p>
<p style="text-align: justify;">Wichtig ist, dass ihr LeJOS nach unserer <a href="/lejos-installation-auf-dem-lego-mindstorms-ev3/" title="Unsere Installationsanleitung für LeJOS">Anleitung</a> installiert und den EV3 entsprechend vorbereitet habt.<br />Mit dem ersten Programm steuern wir eine der einfachsten Ausgaben an, welche der EV3 zu bieten hat, nämlich seinen Display.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_37">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_38  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_41  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Zweck</h1>
<p style="text-align: justify;">In eingebetteten Systemen ist es immer schwierig, Informationen darüber zu erhalten, was das Programm gerade macht. Einen Debugger, wie ihr ihn vielleicht von Java auf dem PC kennt, gibt es auf dem Roboter nämlich nicht. Darum wollen wir Informationen des Programms auf dem EV3-Display ausgeben lassen.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_38">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_39  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_42  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Aufgabe</h1>
<p style="text-align: justify;">Schreibe ein Programm, welches den EV3 den Text „Hallo &lt;&lt;NAME&gt;&gt;“ fünf Sekunden lang anzeigen lässt.</p></div>
			</div><div class="et_pb_module et_pb_text et_pb_text_43  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Schritt für Schritt zum ersten Projekt</h1></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_39">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_40  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_image et_pb_image_5 et-waypoint">
				
				
				
				
				<a href="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum01.JPG.jpg" class="et_pb_lightbox_image" title=""><span class="et_pb_image_wrap "><img loading="lazy" decoding="async" width="700" height="383" src="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum01.JPG.jpg" alt="" title="" srcset="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum01.JPG.jpg 700w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum01.JPG-600x328.jpg 600w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum01.JPG-300x164.jpg 300w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum01.JPG-610x334.jpg 610w" sizes="(max-width: 700px) 100vw, 700px" class="wp-image-2293" /></span></a>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_40">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_41  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_44  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="text-align: justify;">Wenn LeJOS installiert und alles vorbereitet ist, öffnet ihr als erstes Eclipse und wählt einen Workspace aus.</p>
<p style="text-align: justify;">Sobald Eclipse gestartet wird, fragt es euch nach einem Workspace-Pfad. Wer möchte, kann hier einen eigenen Ordner auswählen, in dem Eclipse alle wichtigen Daten für die Projekte hinterlegt. Man kann aber auch den Standard-Pfad ausgewählt lassen und einfach auf „OK“ klicken. Wenn man Eclipse zum ersten Mal öffnet, kann es etwas länger dauern, bis der Startvorgang abgeschlossen ist.</p>
<p style="text-align: justify;">Ist Eclipse gestartet, erstellt ihr ein neues Projekt. Dazu wählt ihr im Reiter „File“ „New“ → „LeJOS EV3 Projekt“ aus.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_41">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_42  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_image et_pb_image_6 et-waypoint">
				
				
				
				
				<a href="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum02.jpg" class="et_pb_lightbox_image" title=""><span class="et_pb_image_wrap "><img loading="lazy" decoding="async" width="700" height="383" src="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum02.jpg" alt="" title="" srcset="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum02.jpg 700w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum02-600x328.jpg 600w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum02-300x164.jpg 300w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum02-610x334.jpg 610w" sizes="(max-width: 700px) 100vw, 700px" class="wp-image-2278" /></span></a>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_42">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_43  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_45  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="text-align: justify;">Daraufhin öffnet sich ein neues Fenster mit dem Titel „New LeJOS EV3 Projekt“. Hier müsst ihr dem Programm einen Namen geben. Wir haben hier den Namen „Hallo Tim“ gewählt. Als nächstes muss im Unterpunkt JRE JavaSE-1.7 ausgewählt werden. Ist dies geschehen, könnt ihr mit einem Klick auf „Finish“ das Projekt erstellen lassen.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_43">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_44  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_image et_pb_image_7">
				
				
				
				
				<span class="et_pb_image_wrap "><img loading="lazy" decoding="async" width="700" height="383" src="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum03.jpg" alt="" title="" srcset="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum03.jpg 700w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum03-600x328.jpg 600w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum03-300x164.jpg 300w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum03-610x334.jpg 610w" sizes="(max-width: 700px) 100vw, 700px" class="wp-image-2280" /></span>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_44">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_45  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_46  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p>Im „Projekt Explorer“ an der linken Seite ist nun unser Projekt aufgeführt. Damit ihr anfangen könnt zu programmieren, muss als nächstes eine für die Programmiersprache Java übliche Haupt-Klasse erstellt werden. Dafür macht ihr einen Rechtsklick auf den Ordner Source, abgekürzt „src“. Im sich öffnenden Kontextmenü klickt ihr auf „New“ → „Class“.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_45">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_46  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_image et_pb_image_8">
				
				
				
				
				<span class="et_pb_image_wrap "><img decoding="async" src="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum04b.jpg" alt="" title="" class="wp-image-2282" /></span>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_46">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_47  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_47  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p>Daraufhin öffnet sich wieder ein neues Fenster, nun mit dem Titel „New Java Class“. Hier müsst ihr der Hauptklasse einen Namen geben. Üblich ist der Name „Main“, den auch wir hier gewählt haben. Da es die Hauptklasse ist, solltet ihr die Boxen bei „public static void main (String[] args)“ und „Inherited abstract methods“ anhaken. Schließt das Fenster nun mit einem Klick auf „Finish“.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_47">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_48  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_image et_pb_image_9">
				
				
				
				
				<span class="et_pb_image_wrap "><img loading="lazy" decoding="async" width="700" height="383" src="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum05.jpg" alt="" title="" srcset="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum05.jpg 700w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum05-600x328.jpg 600w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum05-300x164.jpg 300w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum05-610x334.jpg 610w" sizes="(max-width: 700px) 100vw, 700px" class="wp-image-2283" /></span>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_48">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_49  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_48  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="text-align: justify;">Zurück in Eclipse sehen wir die gerade angelegte Klasse „Main“. In dieser soll nun der Code für eine Displayausgabe geschrieben werden.</p>
<p>Die Java-Befehle dafür findet ihr in der <a href="https://lejos.sourceforge.io/ev3/docs/">LeJOS-API</a>.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_49">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_50  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_toggle et_pb_toggle_2 et_pb_toggle_item  et_pb_toggle_close">
				
				
				
				
				<h5 class="et_pb_toggle_title">API-Befehle für diese Aufgabe</h5>
				<div class="et_pb_toggle_content clearfix"><table>
<caption><span style="text-decoration: underline;"><strong>Allgemein</strong></span></caption>
<tbody>
<tr>
<td style="width: 327px;"><span style="color: #ff6600;">Befehl</span></td>
<td style="width: 242px;"><span style="color: #ff6600;">Erklärung</span></td>
</tr>
<tr>
<td style="width: 327px;">import lejos.hardware.lcd.LCD;</td>
<td style="width: 242px;">Bindet das LCD-Interface ein</td>
</tr>
<tr>
<td style="width: 327px;">import lejos.utility.Delay;</td>
<td style="width: 242px;">Bindet das Delay-Kontroll-Interface ein</td>
</tr>
</tbody>
</table>
<table>
<caption><span style="text-decoration: underline;"><strong>Display</strong></span></caption>
<tbody>
<tr>
<td style="width: 327px;"><span style="color: #ff6600;">Befehl</span></td>
<td style="width: 244px;"><span style="color: #ff6600;">Erklärung</span></td>
</tr>
<tr>
<td style="width: 327px;">LCD.drawString(&#8222;&lt;TEXT&gt;&#8220;, &lt;int x&gt;, &lt; int y&gt;);</td>
<td style="width: 244px;">Text an x-Y-Koordinate schreiben</td>
</tr>
</tbody>
</table>
<table>
<caption><span style="text-decoration: underline;"><strong>Kontrolle</strong></span></caption>
<tbody>
<tr>
<td style="width: 329px;"><span style="color: #ff6600;">Befehl</span></td>
<td style="width: 245px;"><span style="color: #ff6600;">Erklärung</span></td>
</tr>
<tr>
<td style="width: 329px;">Delay.msDelay(&lt;Zeit_ms&gt;);</td>
<td style="width: 245px;">Warten</td>
</tr>
</tbody>
</table></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_50">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_51  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_49  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="text-align: justify;">Wer nicht weiter weiß oder seinen Code mit unserem vergleichen möchte, findet im folgenden unsere Lösung.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_51">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_52  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_cta_2 et_pb_promo  et_pb_text_align_center et_pb_bg_layout_dark">
				
				
				
				
				<div class="et_pb_promo_description"><div><h2 class="et_pb_module_header et-fb-editable-element et-fb-editable-element__editing" contenteditable="true" data-shortcode-id="0.2.0.3-1546810118475" data-quickaccess-id="header">ZUR LÖSUNG WEITERSCROLLEN</h2></div></div>
				
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_52">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_53  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				[et_pb_dmb_code_snippet title=&#8220;Listing 1: Das erste %22Hallo Welt%22 Programm&#8220; code=&#8220;aW1wb3J0IGxlam9zLmhhcmR3YXJlLmxjZC5MQ0Q7CmltcG9ydCBsZWpvcy51dGlsaXR5LkRlbGF5OwoKcHVibGljIGNsYXNzIE1haW4gewoKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHsJCgkJCgkJTENELmRyYXdTdHJpbmcoIkhhbGxvIFRpbSIsIDAsIDQpOwoJCURlbGF5Lm1zRGVsYXkoNTAwMCk7CQkKCQkKCX0KCn0K&#8220; language=&#8220;c&#8220; linenums=&#8220;on&#8220; _builder_version=&#8220;3.23.3&#8243; global_colors_info=&#8220;{}&#8220;]aW1wb3J0IGxlam9zLmhhcmR3YXJlLmxjZC5MQ0Q7CmltcG9ydCBsZWpvcy51dGlsaXR5LkRlbGF5OwoKcHVibGljIGNsYXNzIE1haW4gewoKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHsJCgkJCgkJTENELmRyYXdTdHJpbmcoIkhhbGxvIFRpbSIsIDAsIDQpOwoJCURlbGF5Lm1zRGVsYXkoNTAwMCk7CQkKCQkKCX0KCn0K[/et_pb_dmb_code_snippet]
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_53">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_54  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_50  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p>Sollten bei euch die beiden Begriffe „LCD“ und „Delay“ als Fehler angezeigt werden, liegt das daran, dass die Interfaces nicht eingebunden wurden. Ihr müsst dann die benötigten Interfaces zunächst einbinden.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_54">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_55  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_gallery et_pb_gallery_3  et_pb_bg_layout_light et_pb_slider et_pb_gallery_fullwidth">
				<div class="et_pb_gallery_items et_post_gallery clearfix" data-per_page="4"><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_3_0"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum06.jpg" title="So bindet ihr die Interfaces ein.">
					<img loading="lazy" decoding="async" width="700" height="383" src="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum06.jpg" alt="So bindet ihr die Interfaces ein." class="wp-image-2284" srcset="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum06.jpg 700w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum06-600x328.jpg 600w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum06-300x164.jpg 300w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum06-610x334.jpg 610w" sizes="(max-width: 700px) 100vw, 700px" />
					
				</a>
				</div></div><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_3_1"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum06b.jpg" title="So bindet ihr die Interfaces ein.">
					<img loading="lazy" decoding="async" width="700" height="383" src="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum06b.jpg" alt="So bindet ihr die Interfaces ein." class="wp-image-2285" srcset="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum06b.jpg 700w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum06b-600x328.jpg 600w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum06b-300x164.jpg 300w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum06b-610x334.jpg 610w" sizes="(max-width: 700px) 100vw, 700px" />
					
				</a>
				</div></div><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_3_2"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum07.jpg" title="So bindet ihr die Interfaces ein.">
					<img loading="lazy" decoding="async" width="700" height="383" src="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum07.jpg" alt="So bindet ihr die Interfaces ein." class="wp-image-2286" srcset="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum07.jpg 700w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum07-600x328.jpg 600w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum07-300x164.jpg 300w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum07-610x334.jpg 610w" sizes="(max-width: 700px) 100vw, 700px" />
					
				</a>
				</div></div><div class="et_pb_gallery_item et_pb_bg_layout_light et_pb_gallery_item_3_3"><div class="et_pb_gallery_image landscape">
					<a href="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum07b.jpg" title="So bindet ihr die Interfaces ein.">
					<img loading="lazy" decoding="async" width="700" height="383" src="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum07b.jpg" alt="So bindet ihr die Interfaces ein." class="wp-image-2287" srcset="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum07b.jpg 700w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum07b-600x328.jpg 600w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum07b-300x164.jpg 300w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum07b-610x334.jpg 610w" sizes="(max-width: 700px) 100vw, 700px" />
					
				</a>
				</div></div></div></div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_55">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_56  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_51  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="text-align: justify;">Euer erstes selbst geschriebenes Programm wollen wir jetzt natürlich auch auf den EV3 bringen. Dafür speichert ihr zunächst das Programm ab. Das funktioniert entweder mit dem entsprechenden Symbol in der Menüleiste oder mit der Tastenkombination „Strg + S“.</p>
<p style="text-align: justify;">Danach soll das Programm auf den EV3 geladen werden. Dieser muss dafür per USB-Kabel an den Computer angeschlossen sein. Nun ladet ihr das Programm auf den Roboter, indem ihr auf den weißen Pfeil im grünen Kreis oben in der Menüleiste klickt. Es öffnet sich ein Fenster, welches euch fragt, welches Programm ihr laufen lassen wollt. Hier wählt ihr „LeJOS EV3 Programm“ aus und klickt auf „OK“.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_56">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_57  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_image et_pb_image_10">
				
				
				
				
				<span class="et_pb_image_wrap "><img loading="lazy" decoding="async" width="256" height="429" src="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum08b.jpg" alt="" title="" srcset="https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum08b.jpg 256w, https://www.brickobotik.de/wp-content/uploads/2019/01/LeJOS_Praktikum08b-179x300.jpg 179w" sizes="(max-width: 256px) 100vw, 256px" class="wp-image-2288" /></span>
			</div>
			</div>
				
				
				
				
			</div>
				
				
			</div></p>
<p>Der Beitrag <a href="https://www.brickobotik.de/lejos-praktikum-1-erstellen-eines-projektes/">LeJOS &#8211; Praktikum 1: Erstellen eines Projektes</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.brickobotik.de/lejos-praktikum-1-erstellen-eines-projektes/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>c4ev3 – Praktikum 4: Schleifen</title>
		<link>https://www.brickobotik.de/c4ev3-praktikum-4-schleifen/</link>
					<comments>https://www.brickobotik.de/c4ev3-praktikum-4-schleifen/#comments</comments>
		
		<dc:creator><![CDATA[Felix Krawczyk]]></dc:creator>
		<pubDate>Wed, 16 Jan 2019 06:30:58 +0000</pubDate>
				<category><![CDATA[Lern- & Lehrmaterialien]]></category>
		<category><![CDATA[Programmiersprachen]]></category>
		<category><![CDATA[Aufgabe 4]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[c4ev3]]></category>
		<category><![CDATA[LEGO Mindstorms EV3]]></category>
		<category><![CDATA[Lehre]]></category>
		<category><![CDATA[Praktikum]]></category>
		<guid isPermaLink="false">https://www.brickobotik.de/?p=1110</guid>

					<description><![CDATA[<p>In der vierten Praktikumsaufgabe lernen wir die wichtige Methode der Schleifen kennen. Damit lässt sich das Fahren im Quadrat effizienter programmieren.</p>
<p>Der Beitrag <a href="https://www.brickobotik.de/c4ev3-praktikum-4-schleifen/">c4ev3 – Praktikum 4: Schleifen</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><div class="et_pb_section et_pb_section_8 et_section_regular" >
				
				
				
				
				
				
				<div class="et_pb_row et_pb_row_57">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_58  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_52  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="text-align: justify;">Nachdem wir uns im letzten Praktikum die Lenkung angeeignet haben, wenden wir uns in diesem Praktikum Schleifen zu. So bezeichnet man Wiederholungen in Programmen.<br />Wenn du bisher noch kein c4ev3-Projekt in Eclipse angelegt hast, hilft dir unsere <a href="https://www.brickobotik.de/c4ev3-praktikum-1-erstellen-eines-projekts/">erste Praktikumsaufgabe</a> dabei.</p></div>
			</div><div class="et_pb_module et_pb_text et_pb_text_53  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Zweck</h1>
<p style="text-align: justify;">Schleifen sind ein wichtiger Bestandteil von Programmen. Durch sie kann derselbe Vorgang mehrfach durchgeführt werden, ohne dass die gleichen Code-Zeilen immer wieder aufgeschrieben werden müssen. Dadurch ist es im Allgemeinen einfacher, den Überblick zu behalten. <br />Stellt euch vor, ihr würdet einen Vorgang mehrfach wiederholen wollen und schreibt dafür den Code immer wieder hintereinander auf. Wenn euch dann ein Fehler auffällt, müsst ihr diesen mühsam überall beheben. Mit einer Schleife geht die Korrektur viel einfacher und schneller. Somit helfen euch Schleifen dabei, einen guten Code zu programmieren.</p></div>
			</div><div class="et_pb_module et_pb_text et_pb_text_54  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Vorbereitung</h1>
<p style="text-align: justify;">Zur Vorbereitung erstellt ihr wie im vorherigen Praktikum zunächst ein neues c4ev3-Projekt. Wir starten diesmal mit einem „Empty Project“-Projekt, da wir die Befehle, welche Eclipse uns vorher abgenommen hat, nun selber vertiefen wollen.</p></div>
			</div><div class="et_pb_module et_pb_text et_pb_text_55  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Aufgabe</h1>
<p style="text-align: justify;">Programmiere den Roboter so, dass er ein kleines Quadrat fährt. Dazu soll der EV3 10 cm vorfahren und sich um 90° drehen. Dies muss er natürlich vier Mal machen, bis das Quadrat gefahren ist. Diesmal wollen wir den Befehl aber nur einmal programmieren und diese Programmierzeilen vier Mal ausführen lassen.</p>
<p style="text-align: justify;">Die Befehle, die für dieses Praktikum notwendig sind, kannst du aus der <a href="https://github.com/c4ev3/EV3-API/blob/master/commands.pdf">EV3-API</a> von c4ev3 heraussuchen, falls du sie nicht auswendig weißt. Wenn du gar nicht weiter kommst oder nicht weißt, wie du anfangen kannst, helfen dir die Tipps weiter unten vielleicht weiter. Aber versuche es erst ohne Hilfe.</p>
<p style="text-align: justify;">Die Befehle für Schleifen in einer textuellen Programmiersprache sind abhängig von der gewählten Sprache. Da die grundlagen für Schleifen sich aber sehr ähnlich sind werden wir zum Thema Schleifen im Allgemeinen ein kleines Tutorial für euch erstellen, welches in Arbeit ist.</p></div>
			</div><div class="et_pb_module et_pb_toggle et_pb_toggle_3 et_pb_toggle_item  et_pb_toggle_close">
				
				
				
				
				<h5 class="et_pb_toggle_title">Brauchst du einen Tipp?</h5>
				<div class="et_pb_toggle_content clearfix"><p style="text-align: justify;">Die folgenden Tipps helfen dir, falls du nicht weißt, wie du anfangen sollst oder wenn du nicht weiterkommst.</p>
<ul>
<li style="text-align: justify;"><strong>Zerlege die Aufgabe</strong> in kleinere Teile. Zuerst fahren und wenn das funktioniert um 90° drehen. Anschließend muss darum eine Schleife gelegt werden, die den Code vier Mal wiederholt.</li>
<li style="text-align: justify;">Achte immer darauf, dass du das aktuelle Projekt im <strong>Projekt-Explorer</strong> von Eclipse ausgewält hast.</li>
<li style="text-align: justify;"><strong>Speichere</strong> dein Programm oft (<strong>Strg + S</strong>). So gehen Änderungen nicht verloren und beim Übertragen auf den EV3 wird die aktuelle Version übermittelt.</li>
<li style="text-align: justify;">Denke daran, dein Programm zu <strong>kompilieren</strong> (<strong>Strg + B</strong>), bevor du den Code auf den EV3 überträgst.</li>
</ul></div>
			</div><div class="et_pb_module et_pb_text et_pb_text_56  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="text-align: justify;">Für die Aufgabe sind API-Aufrufe von c4ev3 nötig. Sie regeln, welche Befehle an den EV3 weitergeleitet werden. Wir haben das EV3-API etwas weiter oben im Text bereits verlinkt.</p></div>
			</div><div class="et_pb_module et_pb_cta_3 et_pb_promo  et_pb_text_align_center et_pb_bg_layout_dark">
				
				
				
				
				<div class="et_pb_promo_description"><div><h2 class="et_pb_module_header et-fb-editable-element et-fb-editable-element__editing" contenteditable="true" data-shortcode-id="0.2.0.3-1546810118475" data-quickaccess-id="header">ZUR LÖSUNG WEITERSCROLLEN</h2></div></div>
				
			</div><div class="et_pb_module et_pb_text et_pb_text_57  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Lösung</h1>
<p style="text-align: justify;">Das nachfolgende Listing zeigt das komplette Programm und damit auch eine mögliche Lösung.<br />Gerne könnt ihr eure Lösung mit dieser vergleichen. Wichtig ist aber, dass es hier nicht eine einzige richtige Lösung gibt. Teilt uns doch gerne mit, was ihr anders gemacht habt! </p>
<p style="text-align: justify;">Wenn ihr gar nicht weiterkommt oder keine Ideen habt, wie ihr die Aufgabe angehen sollt, könnt ihr hier die Lösung anschauen. Wir empfehlen aber, in diesem Fall die vorherigen Praktika und diese Lösung genau nachzuvollziehen, um in den folgenden Praktika wieder voll einsteigen zu können.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_58">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_59  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				[et_pb_dmb_code_snippet title=&#8220;Listing 1: Die L&ouml;sung zum c4ev3 Praktium 4&#8243; code=&#8220;I2luY2x1ZGUgPGV2My5oPgoKaW50IG1haW4odm9pZCkKewoKCWludCBpID0gMDsKCglJbml0RVYzKCk7CgoJZm9yIChpID0gMDsgaSA8IDQ7ICsraSkKCXsKCQlPbkZ3ZFJlZyhPVVRfQkMsMjUpOwoJCVdhaXQoU0VDXzEpOwoKCQlPZmYoT1VUX0JDKTsKCQlXYWl0KE1TXzUwMCk7CgoJCU9uRndkUmVnKE9VVF9CLDI1KTsKCQlPZmYoT1VUX0MpOwoJCVdhaXQoU0VDXzEpOwoJCVdhaXQoTVNfNTAwKTsKCgkJT2ZmKE9VVF9CQyk7CgkJV2FpdChNU181MDApOwoJfQoKCglGcmVlRVYzKCk7CglyZXR1cm4gMDsKfQ==&#8220; _builder_version=&#8220;3.23.3&#8243; body_font=&#8220;||||||||&#8220; language=&#8220;c&#8220;]I2luY2x1ZGUgPGV2My5oPgoKaW50IG1haW4odm9pZCkKewoKCWludCBpID0gMDsKCglJbml0RVYzKCk7CgoJZm9yIChpID0gMDsgaSA8IDQ7ICsraSkKCXsKCQlPbkZ3ZFJlZyhPVVRfQkMsMjUpOwoJCVdhaXQoU0VDXzEpOwoKCQlPZmYoT1VUX0JDKTsKCQlXYWl0KE1TXzUwMCk7CgoJCU9uRndkUmVnKE9VVF9CLDI1KTsKCQlPZmYoT1VUX0MpOwoJCVdhaXQoU0VDXzEpOwoJCVdhaXQoTVNfNTAwKTsKCgkJT2ZmKE9VVF9CQyk7CgkJV2FpdChNU181MDApOwoJfQoKCglGcmVlRVYzKCk7CglyZXR1cm4gMDsKfQ==[/et_pb_dmb_code_snippet]
			</div>
				
				
				
				
			</div>
				
				
			</div></p>
<p>Der Beitrag <a href="https://www.brickobotik.de/c4ev3-praktikum-4-schleifen/">c4ev3 – Praktikum 4: Schleifen</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.brickobotik.de/c4ev3-praktikum-4-schleifen/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
		<item>
		<title>EV3-G &#8211; Praktikum 1: Erstellen eines Projektes</title>
		<link>https://www.brickobotik.de/ev3-g-praktikum-1-erstellen-eines-projektes/</link>
					<comments>https://www.brickobotik.de/ev3-g-praktikum-1-erstellen-eines-projektes/#respond</comments>
		
		<dc:creator><![CDATA[Felix Krawczyk]]></dc:creator>
		<pubDate>Tue, 15 Jan 2019 15:16:37 +0000</pubDate>
				<category><![CDATA[Lern- & Lehrmaterialien]]></category>
		<category><![CDATA[Programmiersprachen]]></category>
		<category><![CDATA[Aufgabe 1]]></category>
		<category><![CDATA[EV3-G]]></category>
		<category><![CDATA[LEGO Mindstorms EV3]]></category>
		<category><![CDATA[Lehre]]></category>
		<category><![CDATA[Praktikum]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Programmiersoftware]]></category>
		<category><![CDATA[Programmierumgebung]]></category>
		<guid isPermaLink="false">https://www.brickobotik.de/?p=2029</guid>

					<description><![CDATA[<p>Der Beitrag <a href="https://www.brickobotik.de/ev3-g-praktikum-1-erstellen-eines-projektes/">EV3-G &#8211; Praktikum 1: Erstellen eines Projektes</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<div class="et_pb_section et_pb_section_9 et_section_regular" >
				
				
				
				
				
				
				<div class="et_pb_row et_pb_row_59">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_60  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_58  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p>In diesem ersten Praktikum zeigen wir euch, wie ihr ein Projekt erstellt. Dies ist wichtig für alle folgenden Praktika. Ihr solltet EV3-G nach unserer Anleitung installiert und den EV3 entsprechend vorbereitet haben. <br />Mit dem ersten Programm steuern wir eine der einfachsten Ausgaben an, welche der EV3 zu bieten hat, nämlich sein Display.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_60">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_61  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_59  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Zweck</h1>
<p>In eingebetteten Systemen ist es immer schwierig Informationen darüber zu erhalten, was das Programm gerade macht. Einen Debugger, wie ihr ihn vielleicht von Java auf dem PC kennt, gibt es auf dem Roboter nämlich nicht. Darum wollen wir Informationen des Programms auf dem EV3-Display ausgeben lassen.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_61">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_62  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_60  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1>Aufgabe</h1>
<p>Schreibe ein Programm, welches den EV3 den Text „Hallo Welt“ fünf Sekunden lang anzeigen lässt.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_62">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_63  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_61  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h1 style="margin-bottom: 0.28cm; line-height: 108%;"><b>Schritt für Schritt zum ersten Projekt<br /></b></h1>
<p>Öffnet zuerst die LEGO® Mindstorms® EV3 Software auf eurem PC.<br />Sowohl in der Home- als auch in der Education-Version startet die Software in einem eigenen Hauptmenü. Dort könnt ihr ein neues Programm erstellen. In der Education Version geht das über den Pfad Datei -&gt; Neues Projekt -&gt; Programm, in der Home Edition gibt es nur die Punkte Datei -&gt; Neues Projekt.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_63">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_64  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_image et_pb_image_11 et-waypoint">
				
				
				
				
				<a href="https://www.brickobotik.de/wp-content/uploads/2019/01/EV3-G-projekt-erstellen01.jpg" class="et_pb_lightbox_image" title=""><span class="et_pb_image_wrap "><img loading="lazy" decoding="async" width="700" height="733" src="https://www.brickobotik.de/wp-content/uploads/2019/01/EV3-G-projekt-erstellen01.jpg" alt="" title="" srcset="https://www.brickobotik.de/wp-content/uploads/2019/01/EV3-G-projekt-erstellen01.jpg 700w, https://www.brickobotik.de/wp-content/uploads/2019/01/EV3-G-projekt-erstellen01-600x628.jpg 600w, https://www.brickobotik.de/wp-content/uploads/2019/01/EV3-G-projekt-erstellen01-286x300.jpg 286w, https://www.brickobotik.de/wp-content/uploads/2019/01/EV3-G-projekt-erstellen01-610x639.jpg 610w" sizes="(max-width: 700px) 100vw, 700px" class="wp-image-2038" /></span></a>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_64">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_65  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_62  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="margin-bottom: 0.28cm; line-height: 108%;">Einen Klick später öffnet sich ein neues Projekt-Fenster.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_65">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_66  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_image et_pb_image_12">
				
				
				
				
				<span class="et_pb_image_wrap "><img loading="lazy" decoding="async" width="700" height="383" src="https://www.brickobotik.de/wp-content/uploads/2019/01/EV3-G-projekt-erstellen02.jpg" alt="" title="" srcset="https://www.brickobotik.de/wp-content/uploads/2019/01/EV3-G-projekt-erstellen02.jpg 700w, https://www.brickobotik.de/wp-content/uploads/2019/01/EV3-G-projekt-erstellen02-600x328.jpg 600w, https://www.brickobotik.de/wp-content/uploads/2019/01/EV3-G-projekt-erstellen02-300x164.jpg 300w, https://www.brickobotik.de/wp-content/uploads/2019/01/EV3-G-projekt-erstellen02-610x334.jpg 610w" sizes="(max-width: 700px) 100vw, 700px" class="wp-image-2039" /></span>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_66">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_67  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_63  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p style="text-align: justify;">Dies ist die Arbeitsfläche für all eure Programme. In der unteren Auswahl seht ihr die Blöcke, aus denen ihr eure Programme zusammenbauen könnt.</p>
<p style="text-align: justify;">Wer von euch nicht weiter weiß oder sein Programm mit unserem vergleichen möchte, findet im Folgenden unsere Lösung als Bild aber auch den Lösungsweg als Animation.</p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_67">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_68  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_cta_4 et_pb_promo  et_pb_text_align_center et_pb_bg_layout_dark">
				
				
				
				
				<div class="et_pb_promo_description"><div><h2>ZUR LÖSUNG WEITERSCROLLEN</h2>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p></div></div>
				
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_68">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_69  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_64  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h2>Lösungsbild:</h2></div>
			</div><div class="et_pb_module et_pb_image et_pb_image_13">
				
				
				
				
				<span class="et_pb_image_wrap "><img loading="lazy" decoding="async" width="509" height="211" src="https://www.brickobotik.de/wp-content/uploads/2019/01/EV3-G-first-project06.jpg" alt="" title="" srcset="https://www.brickobotik.de/wp-content/uploads/2019/01/EV3-G-first-project06.jpg 509w, https://www.brickobotik.de/wp-content/uploads/2019/01/EV3-G-first-project06-300x124.jpg 300w" sizes="(max-width: 509px) 100vw, 509px" class="wp-image-2037" /></span>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_69">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_70  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_65  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h2>LösungsWEG:</h2></div>
			</div><div class="et_pb_module et_pb_image et_pb_image_14">
				
				
				
				
				<span class="et_pb_image_wrap "><img decoding="async" src="https://www.brickobotik.de/wp-content/uploads/2019/01/EV3-G-Praktikum1-Lösung.gif" alt="" title="" /></span>
			</div>
			</div>
				
				
				
				
			</div>
				
				
			</div>
<p>Der Beitrag <a href="https://www.brickobotik.de/ev3-g-praktikum-1-erstellen-eines-projektes/">EV3-G &#8211; Praktikum 1: Erstellen eines Projektes</a> erschien zuerst auf <a href="https://www.brickobotik.de">brickobotik</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.brickobotik.de/ev3-g-praktikum-1-erstellen-eines-projektes/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
