Inhoudsopgave:

AI met Grove Zero en Codecraft (Scratch 3.0): 5 stappen (met afbeeldingen)
AI met Grove Zero en Codecraft (Scratch 3.0): 5 stappen (met afbeeldingen)

Video: AI met Grove Zero en Codecraft (Scratch 3.0): 5 stappen (met afbeeldingen)

Video: AI met Grove Zero en Codecraft (Scratch 3.0): 5 stappen (met afbeeldingen)
Video: AI with Grove Zero and Codecraft(Scratch 3.0) - Control G0 Car 2024, Juli-
Anonim
AI met Grove Zero en Codecraft (Scratch 3.0)
AI met Grove Zero en Codecraft (Scratch 3.0)

In dit artikel gaan we drie projecten bouwen met behulp van AI-functies van Codecraft, een grafische programmeeromgeving op basis van Scratch 3.0. Codecraft is ontwikkeld en onderhouden door TinkerGen Education en is gratis te gebruiken.

AI en zijn subset, machine learning, is de afgelopen 10 jaar een integraal onderdeel van ons leven geworden. Schoolcurriculums in veel landen bevatten kennis van AI en machine learning, maar het kan voor een gemiddelde leraar moeilijk zijn om lesmateriaal te maken om dit onderwerp te onderwijzen zonder de juiste hulpmiddelen. Het gebruik van bibliotheken voor machine learning, zelfs de meest gebruiksvriendelijke, zoals Keras, om een applicatie te bouwen waarmee studenten kunnen communiceren, kan een tijdrovende en ontmoedigende taak zijn. Dit is waar Codecraft kan helpen - het heeft een uitgebreide reeks door machine learning aangedreven applicaties die de leraar kan gebruiken om concepten met betrekking tot kunstmatige intelligentie uit te leggen en te demonstreren. Laten we ze eens bekijken!

Stap 1: Overzicht van AI-extensies

Overzicht van AI-extensies
Overzicht van AI-extensies

Open de online-editor van Codecraft op

Klik op Fase-modus en vervolgens op Extensieknop toevoegen onderaan het navigatietabblad Blokken.

U zult zien dat er drie AI-extensies beschikbaar zijn:

- Cognitive Services --- machine learning-modellen voor het verwerken van live videofeed en geluid

- Leerbare machine --- kan worden gebruikt voor het trainen van een classificatiemodel met foto's gemaakt met uw camera

- Vertalen --- maakt gebruik van machine learning voor vertaling

In dit artikel zullen we ons concentreren op Cognitive Services en het gebruik van deze functies om Grove Zero-hardware te besturen. Draadloze communicatie tussen computer en Grove Zero is nog in uitvoering en ik zal het artikel bijwerken zodra het beschikbaar is. Voor nu zullen we een bekabelde verbinding gebruiken om de berichten tussen de Grove Zero-module en de computer door te geven.

Stap 2: Speel Space Invaders met je neus

Image
Image
Speel Space Invaders met je neus
Speel Space Invaders met je neus

Voor de eerste taak gebruiken we alleen de podiummodus zonder enige hardware. Codecraft heeft een schat aan voorbeelden om aan de slag te gaan met programmeren - een van deze voorbeelden is het programmeren van het klassieke spel Space Invaders in Codecraft Stage-modus. We gaan dit voorbeeld uitbreiden en de mogelijkheid toevoegen om de in-game jager met je neus te besturen met behulp van Cognitive-services.

Klik op de knop Voorbeelden. Open SpaceInvaders voorbeeld. We hoeven alleen het deel te veranderen dat relevant is voor beweging. Daarvoor krijgen we de x-positie van de neus op het gezicht gedetecteerd in live videofeed, sla het op in variabele pos. Als de waarde van pos groter is dan 50, verplaatsen we onze ruimtejager naar rechts, als deze kleiner is dan -50, verplaatsen we de jager naar links. Dit is het. Probeer het! Als je het gevoel hebt dat de bewegingssnelheid van de jager te hoog is, kun je verandering x veranderen met … blok naar een kleiner getal.

Vervolgens zullen we deze functionaliteit uitbreiden om de Grove Zero-auto te besturen en deze vooruit/achteruit/links/rechts te laten bewegen.

Stap 3: Bestuur Grove Zero Car met Codecraft AI

Image
Image
Bestuur Grove Zero Car met Codecraft AI
Bestuur Grove Zero Car met Codecraft AI

Laten we beginnen met het schrijven van code in stage-modus - dit is het deel dat verantwoordelijk is voor het analyseren van de videofeed en het uitvoeren van opdrachten naar Grove Zero.

1) We voeren de code in de eerste schermafbeelding uit totdat de spatiebalk wordt ingedrukt. Daarna sturen we het stopcommando.

2) Binnen herhalen tot blok controleren we de x-pos en y-pos van de neus van een gedetecteerd gezicht en slaan ze op in overeenkomstige variabelen.

3) Als de absolute waarde van x-pos kleiner is dan 21 (wat betekent dat het tussen -20 en 20 ligt, dus dicht bij het midden van de afbeelding), dan gaan we verder met het controleren van y-pos om te bepalen of de auto vooruit of achteruit moet gaan

4) Anders controleren we of de auto links of rechts moet gaan

Laten we nu naar het tabblad Apparaat gaan en korte code schrijven voor de Grove Zero-auto. We zullen het blok Wanneer ik ontvang gebruiken, dat verantwoordelijk is voor het ontvangen van interne uitzendopdrachten. Niet te verwarren met Wanneer radio ontvangt, dat wordt gebruikt voor Bluetooth-communicatie. Raadpleeg de screenshot voor details, de code is vrij eenvoudig.

Verbind je geassembleerde Grove Zero-auto met de computer en druk op de Connect-knop in Codecraft. Schakel over naar de online debugging-modus - waarmee Grove Mainboard broadcast-opdrachten via de draad kan ontvangen. Ga dan naar stage mode en druk op de vlag. De auto zou nu moeten rijden, probeer hem te besturen met je neus:)

Stap 4: Lijn volgen met spraakbediening

Image
Image
Lijn volgen met spraakbediening
Lijn volgen met spraakbediening

Er zit een kaart in de Grove Zero-carkit, die oorspronkelijk bedoeld is om de minigame Collect the Coins te spelen. We kunnen het hergebruiken voor het gebruik van spraakherkenning in Codecraft om de auto commando's te geven op welke manier hij op het kruispunt moet afslaan.

Het fasemodusgedeelte is hier minder gecompliceerd dan in het vorige voorbeeld. Wat we doen is:

1) Bij ontvangst van het broadcastbericht kies_richting, herken het spraakfragment en sla het op in de resultaatvariabele.

2) Blijf herkennen totdat het resultaat NIET onbekend is.

3) Vergelijk het resultaat met twee strings - "links" en "rechts". Zend het bijbehorende bericht uit naar de Grove Zero-auto.

De code die in de Grove Zero-auto wordt uitgevoerd, is deze keer iets gecompliceerder, maar in wezen volgt het deze logica:

1) Bij het starten, doorstuurbericht uitzenden:

2) Na het ontvangen van een doorstuurbericht, begint u de lijn te volgen. Als de lijn wegvalt, stop dan de motoren en zend uit!

kies_richting. Hier wordt de code in de Stage-modus gestart, uitgevoerd.

3) Als het bericht is ontvangen, begint u naar links te draaien en schakelt u vervolgens terug naar de regelvolgende modus.

Als het bericht goed is ontvangen, draait u naar rechts en schakelt u vervolgens terug naar de regelvolgende modus.

Stap 5: Achter de schermen

Achter de schermen
Achter de schermen

De neurale netwerkmodellen die in de bovenstaande applicatie worden gebruikt, worden allemaal lokaal in uw browser uitgevoerd, wat een paar duidelijke voordelen heeft in vergelijking met het verzenden van de gegevens naar de cloud voor verwerking: kleinere latentie en betere privacy. Een aantal neurale netwerken wordt gebruikt in cognitieve diensten - Geluidsclassificatie voor spraakopdrachten (, gezichtsherkenningspuntdetectie, gezichtsuitdrukkingsherkenning en leeftijdsschatting.

In dit artikel hebben we de basisfunctionaliteit onderzocht van een van Codecraft AI-extensies - Cognitive services. Er zijn meerdere manieren waarop u op deze voorbeelden kunt voortbouwen om nog leukere en opwindendere toepassingen te maken!

Als je besluit het eens te proberen, of het nu met Grove Zero is of gewoon met de Stage-modus, deel het dan in de reacties hieronder. Voor meer informatie over de Grove Zero-serie, Codecraft en andere hardware voor makers en STEM-docenten, bezoek onze website, TinkerGen heeft een Kickstarter-campagne gemaakt voor MARK (Make A Robot Kit), een robotkit voor het aanleren van codering, robotica, AI!

Aanbevolen: