이 책은 라즈베리파이 사용자도 손쉽게 Tinker Board를 이용하여 제품 개발 실무에서 바로 사용할 수 있는 Tinker Board 활용 방법을 소개한 책입니다. Tinker Board는 ASUS에서 AIoT(인공지능 사물 인터넷) 환경을 준비하기 위해 만든 SBC(Single Board Computer)입니다. Tinker Board는 Raspberry Pi와 같은 개발 환경을 제공합니다. 그래서 기존 Raspberry Pi 사용자도 손쉽게 Tinker Board를 이용하여 제품 개발을 바로 사용할 수 있습니다.
이 책은 Python 3.x 언어 기반으로 opencv, Tensorflow, Pyorch 딥러닝 라이브러리 활용 방법을 소개하고 있습니다. 이 책에서는 카메라를 장착하여 팅커 보드에 영상 인식 기능을 추가하는 방법을 소개하고 있습니다. opencv 인공 지능 라이브러리를 이용하여 얼굴을 인식하는 방법과 Tensorflow, PyTorch 라이브러리 사용 방법을 소개하고 있습니다. 또한, 파이썬용 GPIO, I2C, SPI 라이브러리를 이용하여 여러 가지 하드웨어를 제어하는 방법을 소개하고 있습니다.
이 책에서는 하드웨어를 제어하는 방법 외에도 쓰레드와 메시지 큐의 사용법을 소개하고 있습니다. 팅커 보드는 리눅스 운영체제를 바탕으로 한 환경이기 때문에 쓰레드와 메시지 큐를 통해 프로그램을 구성할 수 있는 장점을 제공합니다. 쓰레드와 메시지 큐를 이용하면 큰 프로젝트를 효율적으로 구성할 수 있습니다. 특히 팅커 보드는 여러 가지 하드웨어 입력을 받는 환경을 제공하기 때문에 쓰레드를 통한 프로젝트 구성이 필요하기도 합니다.
이 책에서는 외부 디바이스를 장착하여 팅커 보드의 기능을 확장하는 방법도 소개하고 있습니다. L9110S DC 모터 드라이버 모듈을 이용하여 DC 모터를 제어할 수 있는 방법을 소개하고 있습니다. HM10 블루투스 모듈을 이용하여 팅커 보드의 시리얼 모듈을 이용한 통신 방법을 소개하고 있습니다, MCP3208 ADC 모듈을 이용하여 센서 입력을 받을 수 있는 방법을 소개하고 있습니다, PCA9685 PWM 드라이버를 소개하여 서보모터, 부저, BLDC 모터를 제어할 수 있는 방법을 소개하고 있습니다, MPU6050 자이로 센서 모듈을 읽는 방법을 소개하고 있습니다.
※ 이 책의 예제 소스파일 다운로드 방법은 4쪽을 참조하고, 책을 보면서 궁금한 사항의 질의응답 방법은 5쪽을 참조합니다.
※ 이 책의 실습 준비물은 6쪽 또는 46~47쪽을 참고하고, 만드는 방법 46~55쪽을 참조합니다.