실시간 영상 전송과 블루투스 통신을 동시 수행하는 주행 및 장애물 탐지.
Tom Clancy’s Rainbow Six Siege 게임에서 영감을 받았다.
침투 조 임무를 수행할 때 감시카메라가 달린 정찰 드론을 활용해 상대 적의 위치를 파악하고 침투하면 아군의 손실을 최대한 피할 수 있으며 방어 조 임무를 수행할 때에는, 드론을 시야의 사각지대에 놓으면 아군이 확인하지 못하는 지역에서 적이 침투하는 모습을 보고 신속하게 반응할 수 있다. 실시간으로 영상을 전송 받으면서 상태를 파악하여 장치를 통제할 수 있도록 하는 것이 목표이다.
SmartCAR 장비를 이용하는데 카메라, 리모트, 무선 인터넷 등의 추가 장치가 없기 때문에 스마트 폰을 이용하여 부족한 점을 채웠다.
Bluetooth used gyroscope & acceleration
안드로이드 플랫폼은 손쉽게 다른 블루투스 장치와의 무선 데이터 교환이 가능함 블루투스 연결을 사용하기 위해 응용 프로그램은 안드로이드의 블루투스 API를 사용한다. 블루투스 API 는 android.bluetooth 패키지에 포함되어 있다.
- 통신 영역 범위 내에 존재하는 Bluetooth Device를 탐색한다.
- 현재 장치의 Bluetooth Pairing 목록에 등록된 장치만 탐색한다.
- Bluetooth Socket을 사용하여 하나는 서버로 다른 하나는 클라이언트로 설정해야 한다.
- 개별 Bluetooth는 각각의 Bluetooth 객체를 가지게 된다.
- Bluetooth Socket 객체를 통해 Bluetooth 장치 간에 데이터를 교환할 수 있다.
- BluetoothSocket 객체를 사용해서 스트림을 생성하여 데이터의 전송과 수신을 하게 된다.
- 절차 : Socket 클래스에서 제공하는 getinputStream() 과 getoutputstream() 메소드를 사용.
- 데이터의 전송, 수신 처리과정 : inputStream 과 outputstream을 얻는다 -> 읽을떄 read 쓸때는 write을 사용하여 데이터를 읽고 쓴다.
실시간 영상 전송 (used RTSP library)
실제 프로그래밍 과정에서 고려해야 할 점은
자율주행 코드 및 초음파 센서를 이용한 장애물 탐지.