Sortowanie LEGO dzięki Raspberry Pi i TensorFlow

Sortowanie LEGO dzięki Raspberry Pi i TensorFlow

Jednym z najpopularniejszych projektów, który pojawił się na Forbocie był sorter M&M'sów.

Pora na bardziej rozbudowane urządzenie, które potrafi posortować klocki LEGO. Zadanie to jest możliwe do wykonania dzięki sztucznej sieci neuronowej uruchomionej na Raspberry Pi.

Wspomniany wcześniej sorter M&M'sów był bardzo prostym urządzeniem. Wszystkie cukierki mają taki sam kształt, więc podczas sortowania wystarczy sprawdzić kolor każdego obiektu. W przypadku LEGO kolory nie mają znaczenia - znacznie ważniejszy jest kształt poszczególnych klocków.

Celem tego projektu było wykonanie urządzenia, które potrafi automatycznie posortować od 10 do 20 typów klocków LEGO. Obecnie konstrukcja radzi sobie z 11 wariantami. Rozpoznawanie klocków jest możliwe za pomocą sztucznej sieci neuronowej, która odpowiednio klasyfikuje elementy.

Urządzenie składa się z automatycznego podajnika, dwóch przenośników taśmowych oraz sterowanej pochylni, dzięki której klocki trafiają do odpowiednich pojemników.  Sorterem steruje Raspberry Pi. Taśmociąg jest zatrzymywany, gdy czujnik IR wykryje obecność klocka. Wykonywane jest wtedy zdjęcie elementu, które następnie zostaje przetworzone na malince. Po sklasyfikowaniu obiektu pochylnia jest ustawiana w odpowiedniej lokalizacji, a klocek spada do pojemnika.

Jak rozpoznawane są klocków?

Rozpoznawanie klocków było możliwe dzięki użyciu TensorFlow, czyli darmowej biblioteki pozwalającej każdemu eksperymentować z uczeniem maszynowym. Oprogramowanie to jest obecnie używane przez takich gigantów jak AMD, Uber, Intel, czy Google, więc naprawdę warto się nim zainteresować. Nie jest to tylko biblioteka do hobbystycznych projektów.

Schemat blokowy opisywanego sortera:

Uczenie sieci zostało wykonane na PC, to właśnie tam za pomocą 2300 zdjęć powstała sieć zdolna do rozpoznawania klocków, która została później przeniesiona na Raspberry Pi. Podczas pierwszych testów autorowi udało się uzyskać dokładność dochodzącą do 89% (ostatecznie uzyskano ponad 96%).

Działanie urządzenia w praktyce widoczne jest poniżej:

Oczywiście prędkość z jaką sortowane są klocki nie jest zawrotna, projekt jednak jest bardzo ciekawy. Jeszcze kilka lat temu wykonanie takiego urządzenia w domowych warunkach nie byłoby łatwe. Teraz wystarczy drukarka 3D, Raspberry Pi oraz darmowe oprogramowanie. Więcej informacji na temat tego projektu można znaleźć w artykułach opublikowanych przez autora.

Czerwone, zielone czy niebieskie? Sorter M&Ms na Arduino!
Czerwone, zielone czy niebieskie? Sorter M&Ms na Arduino!

Już raz pisaliśmy o sorterze M&Msów, którego bazą było Arduino. Okazuje… Czytaj dalej »

lego, raspberrypi, TensorFlow, uczenie