반응형

Google AIY Kit은 Raspberry Pi 에서 음성제어를 위한 모듈을 제공한다. Voice HAT 이라는 것인데, Raspberry pi 3에서 확장 Pin 에 장착하면 마이크와 스피커, 버튼을 이용 가능하다. 또한 Voice Hat에서 사용하고 있지 않은 Pin들로 다른 장치들을 붙여서 제어 가능하다.


1. Google Voice Kit 분석

다음은 AIY Kit 의 Pin Layout이다.

(출처: https://aiyprojects.withgoogle.com/voice#makers-guide-4-hardware-extensions)


이 핀들에 대한 설명은 다음과 같다.

(출처: https://aiyprojects.withgoogle.com/voice#makers-guide-4-hardware-extensions)


Raspberry Pi 3의 Pin은 다음과 같다.


레고 모터 제어를 위해서는 GPIO, 그 중에서 PWM 이 가능한 GPIO를 이용해야 한다. 이 그림에서 보면 VoiceKit의 Servo2(GPIO13), Servo4(GPPIO12)를 사용할 수 있다.


2. Motor Driver 원리

레고 모터 제어를 위해서는 DC 모터 제어를 위한 Motor Driver를 제작해야 한다. Motor Drive는 흔히 사용하는 SN754410NE를 이용한다. SN754410NE의 Pintout은 다음과 같다.

DC모터는 Y로 표시된 부분에 연결한다. 즉, 하나의 SN754410NE는 2개의 모터를 제어할 수 있다. 두개의 입력으로 모터의 회전 방향을 제어할 수 있다. 즉 1A, 2A 에 High, Low를 입력하는 것에 따라서 모터의 회전 방향을 제어한다. 1,2 EN은 모터에 들어갈 전력의 크기를 제어한다. 여기에 PWM을 입력하게 되면 모터 회전 속도를 제어할 수 있다. 이 동작 원리는 H-Bridge라고 하는데 다음에 설명이 잘 되어 있다.


https://electronics.stackexchange.com/questions/96044/control-h-bridge-using-pwm




3. Motor Driver 제작

본 포스팅에서는 2개의 SN754410NE와 1개의 74LS04를 이용해서 4개의 모터를 제어할 수 있는 Motor Driver를 만들어 보겠다. 하나의 모터 제어를 위해서 2개의 핀을 이용한다. 이중 하나는 방향 제어(HIGH, LOW) 그리고 하나는 속도 제어(PWM)를 하는 것이다. 방향 제어를 위해서 1A, 2A는 Inverter를 이용해서 서로 다른 Output을 가지도록 한다. 즉 1A 의 로직 입력의 반대값이 2A로 들어가게 하는 것이다.


다음은 74LS04 Inverter를 이용해서 만든 Motor Driver이다.



다음은 실제 제작한 Motor Driver이다.


반응형
Posted by alias
,