Opis biblioteki LOFI

Dokumentacja poszczególnych funkcji wchodzących w skład biblioteki LOFI do programowania Arduino

POBIERZ BIBLIOTEKĘ LOFI DLA ARDUINO IDE

Buzzer

buzzer(bool stan);

Parametry

  • stan – true lub false – określa czy buzzer ma być włączony czy wyłączony.

Przykład

#include <LOFI.h>
LOFI robot;

void setup() {
Serial.begin(9600);
}

void loop() {
robot.buzzer(true);
delay(500);
robot.buzzer(false);
delay(500);
}

Powyższy kod spowoduje załączanie i wyłączanie buzzera z półsekundowymi przerwami.

Odczyt informacji

read(int wejście);

Parametry

  • wejście – informacja z którego wejścia ma zostać odczytana wartość

Przykład

#include <LOFI.h>
LOFI robot;

void setup() {
Serial.begin(9600);
}

void loop() {
int x = robot.read(1);
}

Kod ten spowoduje odczytanie wartości na pinie INPUT1 i zapisze go do zmiennej x.

Nadpisanie informacji

write(int wyjście, int wartość);

Parametry

  • wyjście – informacja które wyjście ma zostać nadpisane
  • wartość – informacja jaką wartością ma zostać nadpisane wyjście

Przykład

#include <LOFI.h>
LOFI robot;

void setup() {
}

void loop() {
  robot.write(4,100);
}

Na wyjściu OUTPUT4 pojawi się wartość 100.

Silnik DC 1:120

Silniki

motor(int silnik, bool kierunek, int moc);

Parametry

  • silnik – numer silnika (1 lub 2)
  • kierunek – informacja w którą stronę ma obracać się silnik (false – obrót w tył, true – obrót w przód)
  • moc – moc z jaką ma się obracać silnik (od 0 do 100)

Przykład

#include <LOFI.h>
LOFI robot;

void setup() {
}

void loop() {
  robot.motor(1,true,60);
  robot.motor(2,true,60);
}

Silniki robota zaczną poruszać się do przodu z mocą 60

Serwo

servo(int wyjście, int kąt);

Parametry

  • wyjście – pin do którego przypięty jest serwomotor
  • kąt – kąt na jaki ma się obrócić serwomotor

Przykład

Czujnik odległości

distance();

Zwraca wartość odczytaną z czujnika odległości w zakresie ok 0-70cm

Przykład

#include <LOFI.h>
LOFI robot;

void setup() {
Serial.begin(9600);
}

void loop() {
int odleglosc = robot.distance();
Serial.println(odleglosc);
}

Wyświetlacz LED

Funkcje sterujące wyświetlaczem LED 8×8 pixeli.

UWAGA – wyświetlacz LED musi być zawsze podłączony do wyjścia OUTPUT3

Uruchomienie wyświetlacza

displayBegin()

Rozpoczyna nadawanie sygnału cyfrowego sterującego wyświetlaczem. Funkcja ta musi znajdować się zawsze wewnątrz głównej funkcji SETUP()

Wyświetlenie danych an wyświetlaczu

displayShow()

Powoduje odświeżenie wyświetlacza i wyświetlenie wszystkich danych zdefiniowanych wcześniej przez funkcje rysujące (rectangle, displayNumber). Zaleca się aby funkcja display.show() była użyta tylko raz wewnątrz pętli loop(), wówczas wyświetlanie obrazu jest najpłynniejsze.

Określenie koloru diod LED

color(int RED, int GREEN, int BLUE)

Zdefiniowanie wyświetlanego koloru diod w trybie RGB.

Parametry

  • RED – wartość czerwonej składowej koloru w zakresie 0-100
  • GREEN – wartość zielonej składowej koloru w zakresie 0-100
  • BLUE – wartość niebieskiej składowej koloru w zakresie 0-100

Przykład

#include <LOFI.h>
LOFI robot;

void setup() {
robot.displayBegin();
}

void loop() {
  robot.color(255, 0, 0);
  robot.rectangle(0,0,4,4);
  robot.color(0,255, 0);
  robot.rectangle(4,4,4,4);
  robot.displayShow();
}

Przykład

#include <LOFI.h>
LOFI robot;

void setup() {
robot.displayBegin();
}

void loop() {
  robot.rectangle(2,2,4,4);
  robot.displayShow();
}

Określenie koloru pojedynczym parametrem

rainbowColor(int VALUE)

Umożliwa wybranie dowolnego koloru z pełnej palety barw przy pomocy pojedynczej wartości liczbowej (nie trzeba osobno określać składowych RGB). Funkcja ta jest szczególnie przydatna gdy chcemy uzyskać na wyświetlaczu efekt płynnie zmieniających się barw np. efekt tęczy.

Parametry

  • VALUE – wartość koloru w zakresie 0-100

Przykład

#include <LOFI.h>
LOFI robot;

void setup() {
robot.displayBegin();

}

void loop() {
  for (int i=0;i<64;i++) {
     robot.display.setPixelColor(i, robot.rainbowColor(i));
  }
  robot.displayShow();
}

Narysowanie prostokąta

rectangle(int X, int Y, int SZEROKOŚĆ, int WYSOKOŚĆ)

Powoduje wyświetlenie prostokąta o współrzędnych lewego-górnego rogu o wartości X i Y i określonej szerokości i wysokości.

Parametry

  • X – pozycja pozioma lewego-górnego rogu prostokąta, w zakresie 0-7
  • Y – pozycja ppionowa lewego-górnego rogu prostokąta, w zakresie 0-7
  • SZEROKOŚĆ – szerokość prostokąta w zakresie 1-8
  • WYSOKOŚĆ – wysokość prostokąta w zakresie 1-8

UWAGA – współrzędne wyświetlacza liczone są od 0 do 7

Przykład

#include <LOFI.h>
LOFI robot;

void setup() {
robot.displayBegin();

}

void loop() {
  robot.rectangle(2,2,4,4);
  robot.displayShow();
}

Wyświetlenie liczby od 0 do 99

displayNumber(int NUMER)

Parametry

  • NUMER – liczba do wyświetlenia

Przykład

#include <LOFI.h>
LOFI robot;

void setup() {
robot.displayBegin();
}

void loop() {
robot.displayClear();
robot.displayNumber(robot.read(INPUT2));
robot.displayShow();
}

Wyczyszczenie wyświetlacza

displayClear()

Powoduje ustawienie wszystkich pixeli wyświetlacza na wartość zero (wyłączenie).

O autorze scenariusza:

Maciej Wojnicki

Maciej Wojnicki

Projektant, konstruktor, programista, twórca LOFI Robota - edukacyjnego systemu do nauki robotyki i programowania dla dzieci w każdym wieku. Pomysłodawca i współzałożyciel pierwszego w Polsce Fab Labu (Trójmiasto) - otwartej pracowni szybkiego prototypowania i cyfrowej fabrykacji, zrzeszonej w międzynarodowej sieci podobnych instytucji.