Комплетиран је програм за праћење линије, започет током претходне радионице. Ученици су радили у групама (по двојица у групи) и након тога су групе међусобно презентовале своја решења. На крају је сачињен следећи код:

<?php
require 'ev3.php';
function ocitajPodlogu ($robot, $tekst, $senzorDodir, $senzorBoje)
{
	$robot->izgovoriTekst($tekst);
	do
	{
		$ocitano = $robot->ocitajSenzor($senzorDodir);
    }while($ocitano == 0);
    return $robot->ocitajSenzor($senzorBoje);
}	

function kalibracija ($robot)
{
	$tamna = ocitajPodlogu ($robot, "tamna" , Ev3::PORT_1, Ev3::PORT_4);
	$svetla = ocitajPodlogu ($robot, "svetla", Ev3::PORT_1, Ev3::PORT_4);
	$srednjaVrednost = ($tamna + $svetla)/2;
	return $srednjaVrednost;
}

function skreniLevo ($robot, $snaga, $vreme)
{
	$robot-> snagaMotora(Ev3::PORT_C, $snaga/2);
	$robot-> snagaMotora (Ev3::PORT_B, $snaga);
	usleep ($vreme*1000);
}

function skreniDesno ($robot, $snaga, $vreme)
{
	$robot-> snagaMotora(Ev3::PORT_C, $snaga);
	$robot-> snagaMotora (Ev3::PORT_B, $snaga/2);
	usleep ($vreme*1000);
}

function kreni ($robot)
{
	$robot->pokreniMotor (Ev3::PORT_B);
	$robot->pokreniMotor (Ev3::PORT_C);
}

$robot = new Ev3();
$srednjaVrednost = kalibracija ($robot)
kreni($robot);

while (true)
{
	$trenutnaVrednost = $robot->ocitajSenzor(Ev3::PORT_4);
	if ($trenutnaVrednost < $srednjaVrednost)
		skreniDesno ($robot, 70, 150);
	else
		skreniLevo ($robot, 70, 150);
}		

На крају радионице представљен је напредак постигнут у реализацији емулатора Линукс љуске.

Радионца је одржана 2.  фебруара у Библиотеци у Ћуприји.

Ивица
07.02.2015
Одељци: Зид Обавештења Ивица | Кључне речи:
0

Коментари:

Нови коментар

©Библиотека++ 2024 Развој сајта Ивица Лазаревић