SuGO Bot Matlab Code: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 1: | Zeile 1: | ||
<pre> | |||
clear all<br/> | clear all<br/> | ||
close all<br/> | close all<br/> | ||
Zeile 73: | Zeile 74: | ||
delete(b); | delete(b); | ||
</pre> |
Version vom 28. Januar 2014, 16:20 Uhr
clear all<br/> close all<br/> clc b = Brick('ioType','usb'); %Verbindung zum EV3 Brick erstellen<br/> motorPower = 40; %Standardgeschwindigkeit des Motors auf 40 setzen while (true) %Hauptschleife disp('main') b.outputPower(0,Device.MotorA,motorPower) pause(0.0001); b.outputStart(0,Device.MotorA) pause(0.0001); b.outputPower(0,Device.MotorD,motorPower) pause(0.0001); b.outputStart(0,Device.MotorD) pause(0.0001); layer = 0; %definition des Layers für die Sensoren no1 = 0; no2 = 1; mode = -1; %Modus der Sensoren wählen(-1 bedeutet Standardmodus beibehalten) ultrasonic = b.inputReadSI(layer,no1,mode); %auslesen des Ultraschallsensors pause(0.0001); coloursensor = b.inputReadSI(layer,no2,mode); %auslesen des Farbsensors pause(0.0001); if coloursensor <= 10 %wenn schwarze Linie erkannt wird disp('schwarze linie') b.outputPower(0,Device.MotorA,-60) pause(0.0001); b.outputStart(0,Device.MotorA) pause(0.0001); b.outputPower(0,Device.MotorD,-60) pause(0.0001); b.outputStart(0,Device.MotorD) pause(0.6); b.outputPower(0,Device.MotorA,60) pause(0.0001); b.outputStart(0,Device.MotorA) pause(0.0001); b.outputPower(0,Device.MotorD,-60) pause(0.0001); b.outputStart(0,Device.MotorD) pause(0.7); b.outputPower(0,Device.MotorA,motorPower) pause(0.0001); b.outputStart(0,Device.MotorA) pause(0.0001); b.outputPower(0,Device.MotorD,motorPower) pause(0.0001); b.outputStart(0,Device.MotorD) pause(0.0001); end if ultrasonic <= 30 %wenn Gegner erkannt wird disp('gegner gesichtet') b.outputPower(0,Device.MotorA,90) pause(0.0001); b.outputStart(0,Device.MotorA) pause(0.0001); b.outputPower(0,Device.MotorD,90) pause(0.0001); b.outputStart(0,Device.MotorD) pause(0.1); end if coloursensor >= 11 && ultrasonic >= 31 % kein Event eingetroffen disp('kein gegner oder schwarze linie') end end b.outputStop(0,Device.MotorA,0) %abschalten der Motoren<br/> b.outputStop(0,Device.MotorD,0) delete(b);