Robot piszący TypeBot
=======

TypeBot to robot, który potrafi pisać na klawiaturze. Ten folder zawiera kody źródłowe programów do sterowania robotem i dwie aplikacje pomocnicze. Aby uruchomić programy, zainstaluj wcześniej zależności:

```
npm install
```

### TypeBot

Aby uruchomić program TypeBot podłącz płytkę Arduino i wpisz polecenie:

```
node typebot.js
````

Aby dowiedzieć się więcej o robocie TypeBot, zajrzyj do książki!

### Ustawienie serwomotorów

Często podczas ustawiania ramienia trzeba zdejmować i z powrotem mocować jego segmenty. Trzeba je jednak ustawiać pod odpowiednim kątem. Program pomocniczy align_servos ustawia wszystkie serwomotory w położeniu 90 stopni. W praktyce bardzo łatwo jest wzrokowo ocenić, czy kąt jest prosty, co ułatwia montaż ramienia. W celu ustawienia serwomotorów podłącz płytkę Arduino i wpisz polecenie:

```
node align_servos.js
```

### Określenie kątów serwomotorów

Jednym z najtrudniejszych zadań podczas budowania robota TypeBot jest określenie początkowych kątów pozycji serwomotorów. Poniższa aplikacja określa kąty dla wszystkich serwomotorów i wszystkich klawiszy. Wykorzystuje w tym celu parametry opisujące klawiaturę i kilka podstawowych funkcji trygonometrycznych. W razie potrzeby zmień najpierw stałe zdefiniowane na początku programu generate_angle_estimates.js, a następnie wpisz polecenie:

```
node generate_angle_estimates.js
```
