RC카 라즈베리파이를 SSH로 접속합니다. 기본 도구인 apt-update, vim과 rdate
를 설치합니다. 그리고 시간 세팅을 하여 DB에 정확한 시간 값을 저장
할 수 있도록 합니다.
sudo apt update
sudo apt install rdate vim -y
sudo rdate -s time.bora.net
sudo ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime
date
mkdir
를 통해 작업 디렉토리 생성하기!
MySQL 접속을 위한 pip로 설치하기!
python3 -m pip install mysql-connector
python3 -m pip install mysql-connector-python
작업 디렉토리 접근후 테스트 해보기
1_db_test.py
import mysql.connector
db = mysql.connector.connect(host='AWS IP 주소`, user=`관리자 계정 ID', password='관리자 PW', database='생성한 스키마명', auth_plugin='mysql_native_password')
cur = db.cursor()
#query
cur.execute("select * from command")
#print
for (id, time, cmd_string, arg_string, is_finish) in cur:
print(id, time, cmd_string, arg_string, is_finish)
cur.close()
db.close()
sudo apt-get install sense-hat
을 통해 센스햇 Library
2_sensehat_test.py
from sense_hat import SenseHat
sen = SenseHat()
sen.show_message('HELLO')
3_sensor_test.py
from sense_hat import SenseHat
from time import sleep
sense = SenseHat()
while True:
pressure = sense.get_pressure()
temp = sense.get_temperature()
humidity = sense.get_humidity()
p = round(pressure, 2)
t = round(temp, 2)
h = round(humidity, 2)
msg = "Press : " + str(p) + " Temp : " + str(t) + " Humid : " + str(h)
print(msg)
sleep(0.1)
4_eyebbong_test.py
from sense_hat import SenseHat
sense = SenseHat()
sense.clear(255, 255, 255)
def red():
sense.clear(255, 0, 0)
def blue():
sense.clear(0, 0, 255)
def green():
sense.clear(0, 255, 0)
def yellow():
sense.clear(255, 255, 0)
sense.stick.direction_up = red
sense.stick.direction_down = blue
sense.stick.direction_left = green
sense.stick.direction_right = yellow
sense.stick.direction_middle = sense.clear
#infinity loop
while True:
pass
Motor Driver(Motor Hat)
을 사용하면, GPIO 로 간단히 DC Motor, Servo Motor를 제어할 수 있습니다.
Motor Library
다운 후 압축 풀기
cd ~/bbqcar
wget http://raspberrypiwiki.com/images/a/ac/Raspi-MotorHAT-python3.zip --no-check-certificate
unzip ./Raspi-MotorHAT-python3.zip
필요한 라이브러리 작업 디렉토리로 복사하기
cp ./DCTest.py ~/bbqcar/test/5_DCTest.py
cp ./Raspi_I2C.py ~/bbqcar/test/
cp ./Raspi_MotorHAT.py ~/bbqcar/test/
cp ./Raspi_PWM_Servo_Driver.py ~/bbqcar/test/
vi 5_DCTest.py
에서 DC모터가 연결된 채널을 확인한 후 myMotor = mh.getMotor(연결된 채널)
을 수정해줍니다!
from Raspi_PWM_Servo_Driver import PWM
import time
pwm = PWM(0x6F)
pwm.setPWMFreq(60)
while True:
value = int(input('PWM VALUE : '))
if value <= 200 or value >= 500 :
print("WARNING")
continue
pwm.setPWM(0, 0, value)
```