April 27, 2024

디바이스마트 미디어:

[66호] 원하는 색상으로 제어가 가능한 아두이노 IoT 스마트 무드등 키트 -

2021-06-25

★2021 ICT 융합 프로젝트 공모전 결과 발표! -

2021-05-12

디바이스마트 국내 온라인 유통사 유일 벨로다인 라이다 공급! -

2021-02-16

★총 상금 500만원 /2021 ICT 융합 프로젝트 공모전★ -

2021-01-18

디바이스마트 온라인 매거진 전자책(PDF)이 무료! -

2020-09-29

[61호]음성으로 제어하는 간접등 만들기 -

2020-08-26

디바이스마트 자체제작 코딩키트 ‘코딩 도담도담’ 출시 -

2020-08-10

GGM AC모터 대량등록! -

2020-07-10

[60호]초소형 레이더 MDR, 어떻게 제어하고 활용하나 -

2020-06-30

[60호]NANO 33 IoT보드를 활용한 블루투스 수평계 만들기 -

2020-06-30

라즈베리파이3가 드디어 출시!!! (Now Raspberry Pi 3 is Coming!!) -

2016-02-29

MoonWalker Actuator 판매개시!! -

2015-08-27

디바이스마트 레이저가공, 밀링, 선반, 라우터 등 커스텀서비스 견적요청 방법 설명동영상 입니다. -

2015-06-09

디바이스마트와 인텔®이 함께하는 IoT 경진대회! -

2015-05-19

드디어 adafruit도 디바이스마트에서 쉽고 저렴하게 !! -

2015-03-25

[29호] Intel Edison Review -

2015-03-10

Pololu 공식 Distributor 디바이스마트, Pololu 상품 판매 개시!! -

2015-03-09

[칩센]블루투스 전 제품 10%가격할인!! -

2015-02-02

[Arduino]Uno(R3) 구입시 37종 센서키트 할인이벤트!! -

2015-02-02

[M.A.I]Ahram_ISP_V1.5 60개 한정수량 할인이벤트!! -

2015-02-02

[27호]CAN BUS가 가능한 3축 자이로 가속도 센서모듈 출시

로비텍 01

로비텍 01

CAN BUS가 가능한 3축 자이로 가속도 센서모듈(S-GA-CA-100),
MPU-9150(S-GAC-CA-100) 출시

로비텍에서 CAN BUS가 가능한 3축 자이로 가속도 센서모듈(S-GA-CA-100)과 MPU-9150(S-GAC-CA-100)을 출시했다.
GA2CAN, GAC2CAN은 자이로, 가속도, 지자기 센서(GAC2CAN만 해당)가 하나의 패키지로 구성된 센서모듈이다. 3개의 센서는 고성능 마이크로 프로세서를 통해 데이터를 동일 시점에 샘플링하고, 타임스탬프를 제공하고 있다. GAC2CAN은 간단한 명령어 전송만으로 3축 자이로, 가속도, 지자기 값을 획득할 수 있어 다양한 어플리케이션에 쉽게 적용할 수 있으며, 산업용 분산네트워크 통신규약 중 하나인 CAN(Controller Area Network)을 통해 제어함으로써 기타 다양한 모듈과의 통합을 쉽게 해준다. 사용자는 UART 또는 CAN을 이용하여, 로비텍에서 제공하는 유틸리티로 간단하게 설정하여 사용할 수 있다.
GA/GAC2CAN 뿐만 아니라 출시된 다종/다수의 센서 및 기타 제어기들과 하나의 CAN 네트워크로 구성될 수 있다. 이는 시스템 개발에 필요한 시간을 획기적으로 단축시켜 줄 수 있으며, 전장이나 배선이 비교적 간편해 질 수 있음을 의미한다.
전용 프로그램인 MEMS Sensor Monitoring Tool도 제공하여 CAN의 통신설정, 데이터 읽기/쓰기 등을 지원한다. 제품의 자세한 사항은 디바이스마트 홈페이지에서 확인 가능하다.

제원표
■ GA2CAN
· Sensor : Invensense, MPU-6000
· Interface : 400kHz Fast Mode I2C, 최대 20MHz SPI
■ GAC2CAN
· Sensor : Invensense, MPU-9150
· Compass : Full scale range of ±1200μT 3축 디지털 컴퍼스
· Interface : 400kHz Fast Mode I2C

공통사항
· Gyro : ±250, ±500, ±1000, ±2000°/sec 범위의 3축 자이로 센서
· Accelerometer : Programmable full scale ±2g, ±4g, ±8g, ±16g 범위의 3축 가속도센서
· Motion Engine : Digital Motion Processing™ (DMP™)
· Platform : Android, Linux 및 Windows를 지원하는 API 제공
· Gesture : 좌우이동, 확대/축소, 상하이동, 자유낙하 인터럽트, High-G 인터럽트 및 제로모션, 두드리기, 흔들기 등의 동작 감지
· Addition : 디지털 출력의 온도 센서
· Application : 영상촬영 스테빌라이저, ARS, Motion Command, Motion 기반 게임기

제품구매 하러가기

Tel. 070-4651-1584

[27호]Wearable Smart Watch

Wearable Smart Watch32

Wearable Smart Watch 39

Wearable Smart Watch

글 | 충북대학교 정보통신공학 조동관, 임현수

심 사 평
싱크웍스 GPS 시계 기능이나 칼로리 측정 등의 기능은 스마트폰에서 모두 할 수 있는 것이고, 압력센서 등을 유선이 아닌 무선으로 처리했다면 큰 의미를 가지겠는데 유선으로 연결하고 MCU에서 처리하는 것은 의미가 없어 보인다. 또한, 시험 결과도 없어서 그나마 만든 내용의 완성도를 알 수가 없었다.
jk전자 ATMEGA를 이용해서 다양한 센서의 활용과 펌웨어부터 안드로이드 APP까지 1개의 작품에 폭넓은 분야의 많은 부분들이 녹아 들어가 있다. 다만 작품의 시간을 표시하는 구현 부분에서 GPS에서 수신된 시간으로만 시간을 표시하게 되면 GPS수신율이 떨어지는 건물 내부에서 시계 기능을 제대로 수행하지 못할 위험이 있다. 그렇기 때문에 GPS수신이 되지 않는 지역에서는 RTC를 이용해서 시간 표시는 계속 했으면 조금더 완성도가 높았을 것 같다.
뉴티씨 건강과 관련된 내용 특히, 만보기는 오랜 시간동안 많은 사람들에 의해서 많은 관심을 끌고 있다. 또한, 현재 삼성의 스마트 와치가 많은 사람들의 호기심과 부러움의 대상이 되고있는 것도 사실이다. 하지만, 밧데리 충전의 불편함, 기능상 보조기능으로만 사용되고, 연결을 해줘야 하는 점 등 불편함이 많은 것도 사실이다. 하지만, 이러한 가운데에서도 새로운 시도로 손목에 차는 형태의 입는 시계를 제작하고, 만보계 기능을 실제 데이터에 입각하여 구현했다는 것도 좋은 시도로 보인다.

1. 작품 개요
1-1. 제작 동기

Wearable Smart Watch 01
그림 1. 갤럭시 기어 (출처 : http://blog.naver.com/ulsan78?Redirect=Log&logNo=130186200988)

어떤 과목시간에 기술논문을 썼던 적이 있었다. 처음에 뭐를 할까 생각하다가, 한창 그때는 갤럭시 기어에 대한 광고가 티비에서 많이 나왔다. 조원들 끼리 상의하다가 생소하고, 새로운 것에 대한 기술논문을 쓰고 싶어서 스마트워치에 대한 논문을 쓰기 시작했다. 이렇게 자료를 찾고, 직접 전자제품 매장가서 만져보고 하니까 너무 신기하고 갖고 싶었다. 살 돈은 없었지만, 이때까지 배운 AVR를 이용하여 비슷하게라도 웨어러블형 스마트워치를 만드는 것을 계획하게 되었다. 비록 스마트워치보다 성능은 훨씬 떨어지고, 부피도 클거라는 것을 예상했지만, 애초 목적은 우리 손으로도 구형 스마트 워치를 만들 수 있다는 목표를 가지는 거였다.

1-2. 제작 목적
실생활형 웨어러블 스마트 워치를 제작하여, 일생생활에서도 한번에 여러 가지 기능을 접목시켜 사용할 수 있도록 제작 목적이 있었다. 작품에 사용되었던 여러 가지 센서를 하나로 조합하여, 스마트워치에 접목 시켜 시계 외의 추가 기능을 사용할 수 있게끔 만들었다. 예를 들어, 걸을 때의 발에 걸리는 압력을 측정하여 내가 제대로 걷고 있는지, 오늘 온도는 몇 도 이고, 날씨는 어떤지, 현재 내가 얼마의 속도로 걷고 있고 칼로리 소모는 얼마나 되었는지 등을 추가하여 실생활에서도 사용자가 움직일 때 모든 것을 확인하는 쪽으로 개발 방향을 바꾸었다.

2. 작품 설명
2-1. 주요 동작 및 특징
1)전체 동작 시나리오
16×2 LCD를 사용하여 웨어러블 식으로 몸에 탈 부착하여 사용 할 수 있는 스마트 시계를 제작하였다. 각각의 기능은 팔목에 부착된 다섯 개의 인터럽트 스위치에 의해서 동작한다.
첫 번째 스위치의 기능은 GPS센서로부터 수신된 시간 및 날짜를 나타내준다. 수신된 시간은 영국 표준시로 나타나기 때문에 한국시간에 맞춰서 바꿔줘야 한다.
두 번째 스위치의 기능은 사용자의 걸음걸이 속도 및 분당 칼로리 소모량을 나타낸다. 걸음걸이 속도 또한 GPS센서로 값을 수신 받아 위도 경도에 의해 사용자의 이동거리에 따라 시간을 나누어서 속도를 측정한다. 칼로리 같은 경우는 정의된 수식에 의해 사용자의 몸무게를 프로그램에 입력한 상태에서 측정하여 나타난다.
세 번째 스위치는 현재 온도와 날씨 상태를 나타내준다. 기상청에서 제공하는 현재 온도에 따라 야외활동 수준의 상태를 LED로 적색(위험), 황색(경고), 녹색(안전)으로 사용자가 인식 하기 쉽게 구성도 해놓았다. 날씨 상태 같은 경우도 데이터 분석에 의해 온도에 따라 덥다, 따뜻하다 등의 날씨 상태를 나타낼 수 있게 하였다.
네 번째 스위치는 사용자가 걸을 때의 양발의 압력을 측정하여 사용자의 현재 걸음걸이를 표시한다. 여기에서는 오른발의 압력을 측정하기 위해 MCU를 하나 더 사용하였다. 메인 MCU부분에는 왼발의 압력을 측정하게 해놨고, 추가 MCU부분에서는 오른발의 압력을 측정하여, 블루투스 통신으로 메인 MCU에 값을 전송한다. 현재 두 가지의 경우로 구성해놨는데, 메인 부분의 MCU에 연결된 블루투스 스위치가 ON일 경우는, 양발의 걸음걸이 상태를 LCD창에서 확인할 수 있게 해 놨다. 예를 들어, 양발 앞쪽에 힘이 둘 다 많이 걸릴 경우, “Left : Front Waning!”, “Right : Front waning!” 식으로 0번 줄, 1번 줄에 각각 표시 될 수 있게 구성하였다. 만일, 메인 블루투스 전원 스위치가 OFF일 경우는 오른발의 추가 MCU가 스마트 폰과 연동될 수 있게 구성하였다. 스마트 폰의 앱을 실행했을 경우, 오른발의 위치에 따른 자세한 압력 값과 걸음걸이 상태여부를 파악 할 수 있다.
마지막 다섯 번째 스위치는 사용자가 전원을 킨 순간부터 현재까지의 걸음걸이 수, 즉 만보기 기능을 할 수 있게 제작을 하였다.

2-2. 전체 시스템 구성
1) 시스템 블록 다이어그램

Wearable Smart Watch02
[그림 2.1] 시스템 구성도

2) 시스템 세부 구성

(1) 시계 메인

Wearable Smart Watch04
메인에 표시된 숫자에 맞는 스위치는 누르면 해당 기능이 실행이 된다. 1번 부터 각각의 스위치의 명칭은 Clk(Clock), Cal(Speed & Calolie), Tp(Temperature), Force(Force Sensor), Pace(Pace Counters)를 나타낸다. 시계 메인은 전원on 일 때 한번만 나타나게 해놨으며, 스위치 위에 버튼에 해당되는 기능을 써놔서 사용자가 헷갈리지 않게 제작하였다.

(2) 첫 번째 스위치 – 날짜 및 시간
가. GPS 센서 및 회로 구성

Wearable Smart Watch05
위의 모듈을 사용하여 ATmega128의 RX0, TX0 포트를 이용하여, GPS 위성 값을 수신하였다. 수신한 값은 다음과 같다.

Wearable Smart Watch06 Wearable Smart Watch07

Wearable Smart Watch08
[그림2.2]에서 사용할 GPS 정보는 GPRMC이다. RMC는 Recommended Minimum Specific GNSS Data의 약자이다. 말 뜻 그대로 navigation에 일반적으로 필요한 데이터 항목을 다 가지고 있다. 여기서 우리가 사용할 것은 시간, 날짜 및 이동속도만 사용할 예정이다. 1번 값은 MCU에서 GPRMC를 받기 위해서 반드시 코딩에 문자열이 일치하는지 확인해야하는 함수를 써야한다. $GPRMC를 사용하지 않을 경우, [그림2.2]에서처럼 다른 값이 들어올 수 있으니 주의해야 한다. 2번의 UTC Time은 현재 날짜 및 시간을 나타낸다. 영국 표준시를 사용하여 +9를 해주어야 우리나라 시간에 맞는다. 4, 6번에 담겨진 위도와 경도는 현재 프로그램에서 사용하지 않았다. 그래도 테스트 결과 현재 위치가 정확하게 나오는 것을 확인했다. 만일 사용할 경우 도분초 계산법에 의해 수신 된 값 소수점에 x60을 하여 나타내야지 정확한 위치가 나타난다. 10번의 UTC Date 같은 경우 우리나라의 윤년 계산법에 의해 새로운 계산을 해주어야 한다.

Cap 2015-02-16 11-37-57-328

나. 출력 화면

Wearable Smart Watch09

(3) 두 번째 스위치 – 속도 및 칼로리 소모량
가. 속도 및 칼로리 소모량 계산
8번의 Speed over ground를 이용하여, 사용자의 걷는 속도를 구할 수 있다. 하지만 GPS에 담긴 속도의 단위는 노트(Knots)이다. GPS에서 받은 데이터 값들을 토큰 함수로 나누어 GPS_DCUT배열에 저장해 준다. 이차원 배열로 저장된 값들 중에 속도에 관련된 GPS_DCUT[7][0]값을 받아와서 문자열을 정수형으로 바꿔주는 atoi()함수를 사용하여 speed에 Knots로 된 값을 저장 후, m/s로 환산하기 위해 아래의 함수를 사용하여 값을 처리해주었다.

void GPS_SPEED(void)
{
speed_kmh=speed*1.852;
speed_ms=speed_kmh*10000/3600;

[그림 2.8] m/s로 환산법

void GPS_calolie(void) // 칼로리계산(분당칼로리,소비 칼로리 = METs * 체중 * 시간 * 1.0175 (분 기준))
{ // METs=2.8
float METs=2.8;//보통 걷는 속도
float calolie;
unsigned int weight = 65;
if(sec==59)
{
delay_ms(1000);
Time+=1;
}

[그림 2.9] 칼로리 환산법

칼로리 계산법은 보통 걸을 때 기준으로 공식을 사용하였다.
여기서 sec는 GPS의 시간에서 초를 이용하여 정의하였다. 전원이 on 된 뒤로부터 1분마다의 칼로리 소모량이 Kcal/min 단위로 출력이 된다. 여기서 delay(1000)를 주지 않으면 Time의 값이 sec가 59에서 00으로 될 때까지의 약 1000ms 만큼 증가하여, 수식에서의 시간 값이 증가하기 때문에 결론적으로 칼로리 값이 1분당 상당히 커지게 된다.

나. 출력 화면

Wearable Smart Watch10
3분 동안 보통 걸음으로 걸은 후에 소모된 칼로리 계산이다. 현재 속도는 이동 중이 아니라 정지 중에 있어서 0.0m/s로 표시되었다.

(4) 세 번째 스위치 – 현재 온도 및 날씨 상태
가. 온도 센서(HT-01DV)

Wearable Smart Watch11
Atmega128의 ADC 변환을 이용하여 온도 값을 출력하였다. [그림2.11]를 보면 입력 전압에 따른 온도변환과 출력전압의 관계를 나타내주고 있다. 이 그래프를 분석하여 5V로 입력 전압을 준 후, 출력 전압에 해당되는 온도가 맞는지 테스트를 하면 된다. 오차의 범위는 ±0.5℃로 실제 온도기와 비슷하다고 해도 무방하다. 위의 방정식에 Vin에는 우리가 사용할 5V를 ADC 변환한 값 1023을 넣어주고, Vout에는 ADC 변환 값(0~1023)에 해당되는 값을 변수지정 하여 입력해 준다.

Temp_adc=read_adc(0);
for(i=0;i<64;i++) { sum+=Temp_adc; }
Temp1=sum/64;
Temp=(unsigned int)(Temp1/6.2)-40;//data sheet 방정식 참조.
sprintf(Temp_buf, “Tempature : %dC” ,Temp);

[그림 2.12] 온도 값 환산 및 출력

Temp_adc로 출력 전압이 0~1023의 값으로 바뀐 후, 안정화를 위해 64번 더해준 후 64로 나누어 주었다. 그 값을 Temp1에 넣어서 온도 값을 출력하는 식의 코딩을 하였다. 6.2는 입력전압 1023(5V)를 방정식에 있는 165로 나누어서 나온 값이다. 실제 온도기로 테스트 했을 때도 오차 범위 내에서 정확한 온도가 출력이 되었다. 온도에 대한 날씨는 인터넷의 자료를 종합하여 하나로 종합하였다.

출처 : http://blog.naver.com/okkokko?Redirect=Log&logNo=80186227534
30℃ ~ 40℃ boiling hot 매우 더운
25℃ ~ 35℃ hot 더운
15℃ ~ 25℃ mild / warm 포근한
10℃ ~ 20℃ cool 선선한
5℃ ~ 15℃ chilly 쌀쌀한
5℃~ -10℃ cold 추운
-10℃ ~ -30℃ freezing 얼거 같이 추운
[그림 2.13] 온도에 따른 날씨 표현

물론 여기에도 오차가 발생할 수도 있다. 예를 들어, 날씨가 더운데 구름이 많이 껴서 습한 날 경우 [그림2.13]에서는 hot에 해당되는 날씨 이지만 실제 날씨는 Humidness에 해당된다. 이런 경우의 오차는 제외하고, 데이터를 분석하여 적용하였다. 그리고 온도에 따른 LED의 색깔 변화를 손목에 부착하여 사용자가 보다 편리하게 확인할 수 있게 구성을 하였다.

void LED_Temp_status(unsigned int Temp_LED)
{
if(Temp_LED>33) { LED_GREEN=1; LED_YELLOW=1; LED_RED=0; }
else if(Temp_LED>26) { LED_GREEN=1; LED_YELLOW=0; LED_RED=1; }
else if(Temp_LED>18) { LED_GREEN=0; LED_YELLOW=1; LED_RED=1; }
else if(Temp_LED>15) { LED_GREEN=1; LED_YELLOW=0; LED_RED=1; }
else { LED_GREEN=1; LED_YELLOW=1; LED_RED=0; }

[그림 2.14] 온도에 따른 LED 값 출력

나. 센서 구성

출처 : devicemart.co.kr
Name Pin Function
H-out Humidity voltage output
VSS Ground
T-out Temperature voltage output
VDD DC Power
[그림 2.15] 핀 연결도

원래의 구성은 온습도 센서지만, 현재는 온도 센서만 사용하였다. 습도 센서도 연결해놓긴 하였지만, 프로그램에서 코딩을 하지 않았다. 온도 센서는 PF0(ADC0)에 연결하였고, VDD는 5V, VSS에는 gnd를 연결해 주었다. 전체 입력 전압은 9V이지만 7805 레귤레이터를 사용하여서 5V로 낮춰주어서 공급하였다.

다. 출력 화면

Wearable Smart Watch12
현재 온도 17℃에 해당되는 상태 및 LED를 출력해준다.

(5) 네 번째 스위치 – 걸음 걸이 상태 측정
가. 연동 필요성
자기의 걸음걸이를 인식하고 보행하는 사람은 없다. 무의식에서 굳어버린 자신의 걸음걸이로 인해 몸에 불편함을 느끼는 현대인들이 많다. 이러한 바르지 못한 자신의 걸음걸이를 병원에 가지 않더라도, 신발에 내재되어 있는 압력센서와 이에 따른 분석 데이터를 스마트폰 앱을 통해 보면서 자신의 걸음걸이가 어디가 잘못 되었는지 교정할 수 있는 기술이 필요하다고 생각하였다. 올바르지 않는 걸음걸이로 인해 척추가 휘거나 골반이 틀어지는 사례를 많이 접할 수 있었다. 즉, 자신의 걸음걸이 교정은 자신의 건강을 중요시하는 현대인들에게는 필수적인 요소 중 하나라고 생각된다.

나. 압력센서 및 동작 원리

Wearable Smart Watch13
기본적으로 압력센서의 원리는 압력에 따라 전기저항 값 변화와 압력이 없을 경우 높은 저항 값 출력, 압력이 가해지면 5KΩ 정도까지 저항이 내려가는 식으로 이루어져 있다. 현재 우리가 구성한 압력센서 부분은 압력이 가해지면 ADC 변환 값(0~1023)으로 출력되는 값을 (Vout/5)*1023을 계산하여 0~4.9V 단위로 출력하여 확인하게 편하게 구성하였다. 양발 측정을 위해 추가 MCU를 사용하였다. 왼발의 경우에는 메인 MCU에 연결되어 있지만, 오른발의 경우에는 추가 MCU를 사용하여 블루투스 통신으로 값을 메인 MCU에 전송하는 방식을 사용하였다. 메인 MCU 블루투스 전원 스위치의 ON, OFF를 제어함으로 출력 방법이 달라진다.

①메인 블루투스 스위치 ON

Wearable Smart Watch14
오른발에 부착된 추가 MCU에서 압력 센서에 걸리는 값을 입력받아 배열로 저장하여 블루투스 TX단으로 데이터를 전송한다. 메인 MCU에서는 블루투스 RX단으로 값을 수신하고 토큰함수로 배열 저장된 값을 분리 후 처리하여 LCD에 상태를 출력한다. 메인 MCU에 달려있는 압력센서 값들은 바로 처리해서 출력된다.

②메인 블루투스 스위치 OFF

Wearable Smart Watch15
스위치가 ON에서 OFF로 바뀐 후 몇 초 동안은 페어링 해지를 하고 추가 MCU의 블루투스(Slave mode)는 다른 기기를 찾기 시작한다. 해지되고 몇 초 지나면 메인 MCU 블루투스 부분(Master mode)과 연결되어 통신이 시작된다. 오른발의 부착된 추가 MCU에서 측정된 압력센서 값이 블루투스 TX단을 통해 스마트폰 블루투스 RX단으로 전송된다. 전송 된 값은 각각의 발 위치에 압력정도에 따라 색깔이 변하는 기능을 넣었다. 이에 대한 자세한 설명은 (7)에서 하도록 하겠다. 다음은 발에서 압력 값이 가장 많이 걸리는 부분에 표시를 한 사진이다.

Wearable Smart Watch16
왼쪽부터 1, 2, 3, 4, 5로 변수를 지정하고, 걸음걸이에 따라 걸리는 위치의 압력에 대해 분석한 것을 기준으로 프로그램을 작성하였다. 16×2 LCD에서 출력 시에는 왼발, 오른발의 걸을 때 상태를 간단하게 표시할 수 있도록 해놨다. 걸을 때 주요 압력이 걸리는 부위는 1, 2, 5번의 위치이다. 일반적인 걸음을 걸을 때는 1, 2, 3, 5번에는 3.8 ~ 4.2V정도의 압력이 걸리며, 이럴 경우에 LCD에 “Normality!” 라는 문구가 뜨게 된다. 신발 뒤꿈치 전체가 닳는 사람의 경우도 테스트를 해봤는데, 5번 위치에서 3.0~3.4V 수준의 값이 측정되었다. 기준이 3.5V에 비해 낮은 전압 값이 출력되어 왼발, 오른발에서 “Rear Dan!“ 값이 걸을 때마다 표시 되었다. 필자 같은 경우는 신발 뒤꿈치 끝 쪽 모서리가 자꾸 닳아서 테스트를 한 결과, 5번 센서에 힘이 다른 부분에 비해 많이 걸리는 것을 볼 수 있었다.

Wearable Smart Watch17

다. 회로 구성

Wearable Smart Watch18
사용할 압력센서의 기본적인 회로이다. 들어온 센서 값을 MCP6004 소자를 통과하여 이득을 얻는 형식으로 값을 입력받는다. 하지만, 현재 정해진 소자로 [그림 2.22]과 같은 회로로 구성을 하였더니 원하는 출력 값이 제대로 증폭되어 나오지 않았다. 그래서 [그림2.23]의 회로에서 CDS센서 부분에 압력센서를 대체하여 진행하였다.
33KΩ을 3개 직렬연결 해주어서 약 100KΩ을 만들었다. 그리고 출력 전압 계산은 다음과 같은 식에 의해 구해진다.

Wearable Smart Watch19
압력의 세기에 따라 Rf의 값이 달라지면서 출력 전압도 달라진다. 출력 전압을 ADC 변환을 이용하여 (Vout/5)*1023을 사용하여 0~4.9V의 전압을 출력할 수 있도록 해주었다.

라. 출력 화면

Wearable Smart Watch20

(6) 다섯 번째 스위치 – 만보기 기능
가. 만보기
양발의 다섯 번째 단의 압력센서를 이용하여 만보기 기능을 추가하였다. 구동 원리는 다섯 번째 단의 센서 값에 힘이 동시에 걸릴 경우는 카운터가 증가하지 않고, 딛지 않는 발의 압력은 4.9V를 유지하고, 딛는 발의 경우 4.9V 이하가 될 경우 카운팅 되게 소스를 구현 해놨다. 이 부분도 칼로리 때와 마찬가지로 양발의 딜레이를 주어 코딩을 하였다. 평균적으로 한발을 딛고, 한발이 떨어져 나갈 때 500ms 이내로 동작하게 된다.

나. 출력 화면

Wearable Smart Watch21

(7) 스마트폰 App

Wearable Smart Watch22
스마트폰 APP에서 처리하는 일은 추가 MCU에 연결된 압력 센서를 블루투스 통신을 통해서 실시간으로 압력 값을 전송받고 그 데이터 값을 스트림 모드로 띄워주는 과정을 거친다. 전체적인 과정을 설명하면 Bluetooth Socket으로 추가 MCU에 연결된 블루투스 디바이스에 Connect하고 InputStream으로 read후 획득한 결과를 Android View에 TextView와 ImageView를 통해 표시하는 기능을 가진 앱이다. [그림2.26]의 경우에는 어플을 처음 실행했을 때 인트로 엑티비티를 사용해서 처음 화면을 만들어 주었고 [그림2.27]의 경우에는 어플 실행 후 핸드폰이 블루투스 기능이 실행되어 있지 않을 때 블루투스 권한을 요청하는 기능을 보여주고 있다. [그림2.28]을 참고하면 블루투스 권한을 요청하는 BLUETOOTH와 BLUETOOTH_ADMIN 퍼미션을 알 수 있다. 그 후 [그림2.29]을 보면 블루투스를 활성화하는 액티비티를 호출하는 것을 볼 수 있다.

<uses-permission android:name=”android.permission.BLUETOOTH” />
<uses-permission android:name=”android.permission.BLUETOOTH_ADMIN” />

[그림 2.28] 블루투스 권한 요청

IF (!mBTAdapter.isEnabled()) {
Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
startActinityForResult(enableBtIntent, REQUEST_ENABLE_BT);
}

[그림 2.29] 액티비티 호출

다음 과정은 블루투스로 연결이 가능한 디바이스를 찾는 과정이 되겠다. 블루투스 어답터를 사용하면 디바이스 또는 페어링 된 디바이스 목록을 퀘리해서 원격으로 디바이스를 찾을 수 있다. 연결이 가능한 추가 MCU에 연결된 블루투스 디바이스를 찾게 되면 블루투스와 통신이 가능하게 된다.

[그림2.30]를 보면 페어링 과정을 통해서 연결할 장치를 검색하는 화면이다. 맨 위에 페어링 된 장치 중 FB155 장치가 추가 MCU에 연결된 블루투스이다. 다음에는 초기 연결 상태를 보여주는 [그림2.31]는 현재 5개의 압력센서 값이 전부 49로 나타내어지고 있는데 이는 압력 센서에 아무런 압력이 주어지지 않을 때이다. 이 상태에서 사용자가 걸음걸이를 걷게 될 때 압력 값이 변하게 되면서 실시간으로 어느 정도의 압력으로 걸음걸이를 걷고 있는지 실시간으로 갱신이 되어 알 수 있다. 여기서 35이상의 힘을 받게 되면 경고가 표시되어지면서 빨강 원이 나타내지게 된다. 이는 [그림2.32]를 참고하면 알 수 있다.

Wearable Smart Watch24
그리고 어플리케이션 소스 중에 있어서 가장 중요했던, 디바이스에서 핸드폰 블루투스로 데이터를 전송하고 어플리케이션이 데이터를 수신할 때 수신한 데이터를 스트림으로 변환시킨 부분이다.

case MESSAGE_READ:
byte[] readBuf = (byte[]) msg.obj; // 데이터를 수신할때
//construct a string from the valid bytes in the buffer
String readMessage = new String(readBuf, 0, msg.arg1); // 수신한 데이터를 스트림으로 변환

String[] arrData = readMessage.replace(“$,”,””).replace(“,#”,””).split(“,”);
if(arrData.length !=5) return;

for(int i = o; i < arrData. length; i++){
txtview[i].setText((i+1) + “번 : “ + arrData[i]);

int resource = (arrData[i].compareTo(“35”) > o) ? whiteImg[i] : redImg[i];
imgview[i].setBackgroungResource(resource);
}

[그림 2.33] 데이터 수신


[그림2.33]를 보면 $로 시작되고 #으로 끝난 데이터를 (,)로 5개를 나누어서 1~5번까지 데이터를 나눠주는 과정을 보여주고 있다.

2-3. 개발 환경
하드웨어 – Code vision 프로그램을 사용하여 구현하였다.
App – 이클립스를 사용하여 구현하였다.

3. 단계별 제작 과정
3-1. 메인 MCU 부분 제작과정
1) 기판 구성
(1) 손목부분

Wearable Smart Watch25

Wearable Smart Watch26
72X50mm의 기판을 사용하여 사용자가 움직일 때 불편하지 않는 크기로 구성하였다. 기능을 선택할 5개의 스위치와 온도에 연관된 기능의 3개의 LED를 배치해주고 납땝을 하였다. LCD는 [그림3.1]에서 표시된 부분에 사용자가 원하는 16X2 LCD를 꼽을 수 있게 탈부착 식으로 구성하였다.

(2) MCU 부분

Wearable Smart Watch27
MCU 부분은 팔뚝에 연결하여 긴 리드선을 이용하여 팔목부분의 LCD와 연결하여 동작하고 있다. 85X62mm의 기판과 건전지와 합계 시 무게가 많이 나가지 않아서 동작에 지장은 가지 않는다. 각종 센서 부분이 이 부분에 연결되어 있고, LCD처럼 탈부착식으로 구성하였다. 추가 MCU와 마찬가지로 왼발 압력측정을 할 수 있게 저항을 연결하여 0~49의 값을 읽어드릴 수 있도록 구성하였다.

2) 압력센서 연결부분

Wearable Smart Watch28
왼쪽 발은 오른쪽 발과 달리 직접 연결해주었다. 바깥쪽으로 선을 구성하여 움직이는데 제한을 없게 하였고, 길이를 충분히 길게 하여 사용자의 신장에 따라 길이를 조절할 수 있게 구성하였다.

3) 센서 연동

Wearable Smart Watch29
블루투스단에는 스위치를 달아 ON일 때에는 LED가 점멸하면서 페어링 대기를 하고, 오른발의 추가 MCU와 연동하게 되어있다. OFF시에는 LED의 불이 꺼지면서 블루투스에 전압이 인가되지 않는다. 이 때는 스마트폰과 오른발의 블루투스가 페어링을 하여 값을 주고 받는다.

4) 밴드 부분

Wearable Smart Watch30
팔목과 팔뚝에 고정시키기 위해 찍찍이를 사용하여 사용자의 두께에 따라 편하게 부착할 수 있게 구성하였다.

5) 전체 구성부분

Wearable Smart Watch31

6) 착용 부분

Wearable Smart Watch32

3-2. 추가 MCU 부분 제작과정

1) 틀 제작

Wearable Smart Watch 33
MCU와 블루투스를 연결 하는 핀을 기판에 배치를 하여 전체적인 틀을 잡도록 구성하였다.

2) 저항 배치 및 압력센서 핀 연결

Wearable Smart Watch34
압력센서에 연결된 저항 연결과 블루투스에 공급될 3.3V를 연결해주였다. 현재 사진에서는 다이오드 3개로 3.2V 정도 만들어주었지만 공급이 불안정하여 1117s 3.3V 레귤레이터를 사용하여 3.3V를 연결해 주었다.

3) 전체 부품 배치 및 납땜

Wearable Smart Watch35
현재 9V 건전지로 전압을 인가하였다. 그림에서는 7805 LDO소자가 방열판에 연결하지 않았지만, 방열판을 달아 LDO에서 발생하는 열을 방출해 주게 구성하였다.

4) 완성 부분

Wearable Smart Watch36Wearable Smart Watch37

전체적인 구성 부품을 조립하여 오른발에 부착을 하였다. 기본적인 값은 49로 구성하였고, 압력에 따라 0~49의 값이 메인 MCU로 블루투스를 통해 전송된다.

5) 수정 부분

Wearable Smart Watch 41
[그림3.9]과 [그림3.10]부분에서의 1117s 3.3V LDO로 교체를 하고, 방열판을 달아줘야 부분에 대해 수정한 뒤에 최종 결과물을 완성시켰다.

 

 

[27호]블루투스 4.0 (BLE) 모듈 HBT2X3N

블루투스 4

블루투스 4

블루투스 4.0 (BLE) 모듈 HBT2X3N

무선 통신 모듈과 시리얼 어댑터 전문 업체인 ㈜칩센에서 블루투스 4.0 모델인 HBT2X3N를 출시했다.
HBT2X3N는 블루투스 4.0(BLE) 모듈로 칩안테나가 내장되어 있고 2~3.6V의 저전력으로 구동 가능하며 10x20mm 사이즈로 크기까지 줄인 블루투스 저전력 초소형 무선모듈이다. 또한 세계적으로 무료로 사용가능하도록 합의된 2.4Ghz ISM 대역을 사용하며 저에너지 블루투스 제품을 빠른시간에 테스트하고, 제품에 적용할 수 있도록 지원한다. HBT2x3N은 자체 펌웨어를 내장한 SOC타입의 모듈로 사용자는 BLE기술적용에 소요되는 시간, 노력을 줄이고 제품 기능자체에 집중할 수 있다.

최근 뜨거운 관심을 받고 있는 IOT(사물인터넷) 분야나, 위치기반 근접 무선 솔루션, 저전력 무선 악세서리등에 적합한 모듈이며 쉽게 사용하기 위해 Serial Service, GPIO Service, PWM Service로 한정하여 사용자가 핵심 기능을 이해하기 쉽도록 제작됐다. 기존 TX, RX핀을 이용한 UART통신을 그대로 BLE모듈로 활용할 수 있고, 블루투스로 GPIO를 원격 제어할 수 있으며, PWM신호를 활용하여 모터제어나 조명제어에 활용할 수 있다. 특히 BLE에서는 기존 클래식 BT모듈에서 적용하기 힘들었던 아이폰(ios)와의 통신도 특별한 인증절차 없이 통신을 구현할 수 있다.

제품특징

사양 Blutooth v4.0 BLE
인터페이스 UART
안테나 칩안테나
RF출력 -24 ~4dBm
전력공급 2V~3.6V
작동온도범위 -20℃ ~ 70℃
전송속도 115,200bps
통신거리 10m
소모전류 Advertising(Pairing)Mode
Max 1mA
UART Active RX MODE
Max 22mA

제품구매하러가기

Tel. 1599-6005
www.chipsen.com

 

 

[27호]하이브리드 실내 측위 시스템

하이브리드 02

하이브리드 01

하이브리드 실내 측위 시스템

글 | 한림대학교 대학원 박정욱

심 사 평
싱크웍스 논문의 내용에 시험 사실은 있으나 작품의 완성도를 보기 위한 다양한 실험 데이터나 동영상이 없었다. 그래서 완성도를 판단할 수 없었다. 어떤 프로젝트의 일부로 진행된 내용으로 보인다 따라서 창의성에 높은 점수를 주기 어려웠다.
jk전자 가시광 통신에 대한 지식이 부족하여 심사평을 작성하기가 어렵습니다. 하지만 이 부분이 상용화되어 LED 광을 이용해서 통신이 이루어 진다면 경제 전반에 미치는 파급 효과는 대단할 것 같습니다.
뉴티씨 LED의 깜빡임을 최대 80cm까지 전달하여, 데이터를 송수신할 수 있었다는 점에서, 특별한 연구테마로 생각된다. 다만, 주변광의 변화에 따른 변화나, 태양광의 다양한 주파수로 인한 오차 등을 보완할 수 있도록, 여러가지 시스템상의 보완이 필요한 것으로 보인다. 또한, 지그비 등을 이용하여 중계하는 등 다양한 노력이 보이며, 실제 구현하기는 어려운 기술인데, 잘 동작하는 것으로 보이지만, 좀 더 현실적인 기술로 발돋움하기 위하여, 앞으로 많은 연구가 필요해 보인다.

1. 개요
현재, 목표물의 위치를 결정하는 대부분의 측위 기법들은 위성을 사용하는 GPS, 셀룰라 실외통신, 또는 무선랜(AP의 위치)를 기반으로한 실내 통신의 기본 인프라를 사용하는 무선 기반의 측위 방식들이다. 무선 기반 측위와 다른 방식으로는 적외선을 사용하는 Active Badge, Firefly 방법, 초음파를 사용하는 Active Bat, Cricket 또는 비디오 기반의 Vision analysis 시스템 등이 있는데, 이런 방식의 대부분은 추정 정확도 개선, 시스템 인프라 설치비 경감, 측위 서비스 범위 확장 등이 필요한데, 다양한 분야에서 이런 요구들을 충족시키는 새로운 측위 기법에 대한 연구가 진행 중이다.
한편, 그린 IT 융합 연구의 하나로, LED 조명과 무선 IT기술을 융합하여 새로운 서비스를 창출하기 위해 가시광 통신 연구들이 활발하게 진행 되고 있는데, LED 조명과 실내 무선 네트워킹을 사용하여 목표물을 찾는 가시광 기반 측위 연구도 최근 시작 되었다. 가시광 통신(VLC)은 사람 눈에 보이는 가시광 전파를 이용한 통신이며, 백열전구와 형광등 조명을 사용해 통신을 하는 기술인데, 최근에 LED 조명 인프라를 사용한 통신 기술로 발전되고 있는 새로운 정보통신 기술이다.
다음 그림은 가시광 통신 기술의 기본 개념을 보여준다. 데이터를 0과 1의 조합으로 변환해서 정보를 전송한다는 점에서 일반적인 디지털 통신과 같지만, 데이터가 ‘0’일 때 빛이 OFF, ‘1’일 때 빛이 ON되는 점멸이나 밝기에 따른 명암으로 치환해서 송신한다.

하이브리드 02
즉, 가시광 통신(VLC)은 사람의 눈에 보이는 가시광 전파를 사용한 통신이며 백열전구와 형광등과 같은 조명이 디지털 반도체에 의한 LED(Light Emitting Diode) 조명으로 교체되는 인프라를 이용하여 통신을 가능하게 하는 기술로써 가시광 무선통신PHY기술, 가시광 무선 통신 L2 MAC 기술, 가시광 무선 통신 응용 프로토콜 기술 등을 대상으로 한다. 가시광 무선통신은 반도체가 메모리 및 프로세서에 이어 조명으로도 사용하기 시작하면서 조명 빛을 통신 광원으로 사용할 수 있는 기술로 등장했다. 즉, 가시광 무선통신은 조명과 통신을 융합한 것이다.
가시광 통신은 780nm에서 380nm의 가시광 파장(Wavelenght)을 사용한다. 이 파장은 385THz에서 789THz로써 가청주파수가 20Hz에서 20,000Hz임을 알면 굉장한 고주파 신호이다. 가시광 통신은 800nm에서 900nm를 사용하는 IrDA와 가장 유사한 파장을 사용하지만, 조명과 동시에 통신을 혼용할 수 있다는 큰 장점이 있다. LED는 전기를 빛으로 바꾸는 성질을 이용하여 조명으로 활용한다. 가시광 통신의 원리는 약 30ns에서 250ns에 달하는 LED가 전기에서 빛으로 바꾸는 빠른 스위칭(ON-OFF)을 통신 모듈레이션하여 통신하는 것이다. 인체의 눈은 초당 100이상 깜빡이면 그 깜빡임을 인식하지 못하고 계속적으로 켜진 것으로 인식하기 때문에 통신에 의한 깜빡임이 있지만, 계속적으로 켜진 것으로 인식되기 때문에 조명의 기능도 유지된다. 빛 신호로 바뀐 데이터 신호는 수 많은 직접파와 반사파로 수광체인 포토다이오드로 전달되어 빛 신호를 전기적 신호로 다시 바꾸어 수신하게 된다.
이번 프로젝트에서 추정 정확도를 개선하고, 서비스 범위를 확대하기 위해 가시광 방식과 지그비 다중홉 무선 네트워크 인프라를 가지고 새로운 융합 측위 시나리오를 제안하고 구현한다. 종래 측위 문제들을 해결하기 위해서 LED 조명을 사용하는 정밀한 가시광 방식과 저전력, 우수한 보안성, 그리고 무제한의 서비스 확장 능력 특성의 지그비 다중 홉 무선 네트워킹을 융합하여 사용하는 새로운 그린 IT 융합 기반의 측위 시스템을 제안하고 개발하였다.

2. 시스템 구성
2-1. 전체 구성
Fingerfrinting 기반 또는 Cell 기반 목표물 측위와 같은 종래 기존의 측위 방식들은 GPS와 셀룰라 무선 통신 환경에 기반을 둔 무선 측위들로, 목표물의 위치를 지도 상의 목표물 근처에 위치한 신호표식 또는 비콘(Beacon)의 기준 위치로 결정하는 근접(Proximity)추정 방식을 사용한다. 근접 추정 방식은 근사에 의한 오차뿐만 아니라, 실내 외 무선 채널 환경에 의한 왜곡 신호 수신에 의한 추정 오차가 발생한다. 이 프로젝트는 근처의 무선 채널로 발생되는 추정 오차를 완하하기 위해 가시광과 무선 통신 채널의 결합 환경에서 근접 측위 개념을 사용하였다.

하이브리드 03
그림은 하이브리드 측위 구현을 위해 구상한 시나리오이다. 이 시나리오는 간편한 하이브리드 근접 기반의 측위 알고리즘을 사용하는데, 근접측위는 현재 많이 사용되는 무선측위 기법이며, 휴대폰의 위치측위 방법중 하나이다. 그림에서 사용된 측위 시나리오는 다음과 같다. 가시광 ID 데이터는 조명과 동시에 생성되며 LED 램프 조명에서 생성된 위치 정보는 목표노드(관측노드)의 가시광 수신기 모듈에 의해 수신된다. 수신된 ID 신호는 복원되고, 디지털 가시광 ID 데이터로 변경되어 목표노드의 지그비 송수신기 모듈에 의해, 지그비 무선 네트워크로 전송된다. 지그비 송수신 기능이 있는 중계노드는 가시광 ID 정보를 다중 홉 전송을 통해, 주노드로 전달한다. 위치 정보가 담긴 ID 데이터는 주노드에 연결된 시스템 제어기 화면에 나타난다. 지그비 무선 네트워크 측에서 볼 때, 목표노드로부터 수신된 가시광 ID 정보는 지그비 무선 네트워크 상에서 라우터 기능을 하는 노드에 의해 중계노드로 전송된다. 마지막으로, 지그비 코디네이터로 기능을 하는 주노드와 시스템 제어기는 시스템 제어기 화면에측위 결과를 표시한다. 시스템의 스펙은 아래와 같다.

SPECIFICATION DESCRIPTION
Visible light module LED : LUW50343
PhotoDiode : TSL252R
032.768kbps/115kbps/4Mbps
Noncarrier OOK NRZ
Wireless module IEEE 802.15.4 Zigbee 2006
2.4GHz / 16channel / DSSSQPSK
Overall system 115kbps between monitoring node and system controller
Multiple hop transmission(3~7개)

다음 스펙의 하이브리드 측위 시스템 설계를 위해 아래 그림같이 시스템 구조를 구성한다. 아래 그림의 PC 기반 시스템 제어기는 주노드와 직렬 통신 방식으로 연결되며, 주노드는 지그비 무선 네트워크상에서 네트워크를 형성하고, 네트워크 주소도 정하는 코디네이터 역할을 담당한다. 주노드의 주요 기능은 직렬접속 기능과 지그비 송수신 모뎀 기능이며, 중계노드와 최대 10mW 출력의 지그비 신호를 교환한다. 중계노드는 지그비 네트워크 상에서 라우터 역할을 담당하며, 코디네이터가 정한 네트워크 주소를 공유한다. 목표노드는 가시광 신호의 송수신 모듈과 직렬 통신 접속방식으로 연결이 되며, 지그비 무선 네트워크 상 라우터 또는 종단 소자 역할을 하며, 코디네이터와 라우터와 함께 네트워크 주소를 공유한다.

하이브리드 04
먼저, 다음 그림의 LED 배열 조명에서 조명 빛과 위치 정보가 담긴 ID 데이터가 생성되어 함께 출력되고 380 ~ 780THz 주파수 대역의 가시광 채널을 거쳐서, 이 중 ID 데이터는 수광 다이오드인 가시광 수신 모듈에 도달되어 다시 디지털 데이터로 복원이 되고 데이터가 목표노드로 직렬전송 방식으로 이동되어 지그비 무선 네트워크를 거쳐 중계노드, 주노드와 시스템 제어기 화면에 나타내어 목표의 위치를 추적할수 있다.

2-2. 가시광 통신 구성
아래 그림에서 전체 하이브리드 측위 시스템에서 가시광 송수신기에 대한 상세한 구조를 볼 수 있다.

하이브리드 05

가시광 ID 송신기의 PC에서 생성된 이진 데이터는 RS232 구동회로와 백색 LED 구동회로를 거쳐 3×3 사각형 형태의 LED 배열을 구동한다. 이때 9V 배터리의 전원은 이진 데이터가 ‘1’인 경우에만 공급되어 가시광 ID신호를 생성한다. 그런 후 380 ~ 780THz의 높은 주파수 대역의 가시광 채널을 거쳐 광 접속기, 광다이오드, 신호증폭기, 필터 등으로 구성된 가시광 ID 수신기에 수신된 신호는 RS232 구동회로를 거쳐서 다시 이진 디지털 데이터로 복원이 된다. 여기서, PC 대신에 가시광 ID 송신기 내부의 One chip CPU (SILICON LABORATORIES 사의 C8051)로 역할 변경도 가능하다.
송신기에서 생성된 ID 정보는 이진 형식의 NRZ 입력 데이터로 변환되고, 다시 별도의 캐리어 신호없이 이진 데이터가 변환되고, 다시 별도의 캐리어 신호없이 이진 데이터가 ‘1’인 경우 온 오프 키잉(OOK) 변조를 사용하여 가시광 신호를 생성한다. 가시광 채널을 통해 전송된 가시광 신호는 수광다이오드를 거쳐 수신기로 입력된 후, 비동기 검파 방식을 사용하여 검파되어, 본래의 NRZ 데이터로 복원이 된다.

2-3. 지그비 구성
시스템 구성은 아래 그림과 같다. 주노드는 TI사의 상용 개발 키트로 지그비 모뎀이 내장된 프로토콜, 직렬접속 인터페이스를 사용하여 구성하였다. 주노드의 내부 구성은 크게 네 가지 블록인 CPU블록, 메모리 블록, 무선블록, 그리고 입출력장치 블록이다. CPU블록은 32MHz 클록을 사용하는 8051 CPU코어와 CPU 동작 없이 대규모 데이터 블록 이동이 가능하게 하는 DMA 제어기와 그 주변회로로 구성된다.

하이브리드 06
메모리 블록은 8kB SRAM과 128kB 플래시를 사용하는데, SRAM은 시스템 동작에 필요한 프로그램 메모리로 사용되며, 플래시 메모리는 데이터 메모리 용도로 사용된다. 무선 블록은 지그비 무선통신의 핵심 모듈로 변복조기, 채널 중재 CSMA-CA 방식의 MAC 알고리즘 로직, 주파수 합성기 로직으로 구성된다. 무선 블록은 실제 데이터 코딩된 비트 데이터를 프레임 포맷, 변조, 채널중재 할당 등을 거쳐 2.4GHz 지그비 신호로 변경해 휩 안테나를 통해 신호를 전송하는 역할이다. 입출력 블록에는 타이머, ADC, UART 등이 있으며 시스템 제어기와 직렬 통신 인터페이스로 연결되고 각 블록은 주 버스에 8비트로 연결된다.

3. 제작 과정
3-1. 가시광 통신 실험
하이브리드 측위 시나리오 구현을 위해 LED조명과 지그비 무선 네트워크 기반 하이브리드 측위 프로토 시스템을 제작하였다. 먼저, 가시광 송수신을 위하여 가시광 송수신부를 우선적으로 설계하였다.
다음 회로는 가시광 송신부의 회로도이다. 송신부의 입력전압은 9V배터리가 사용되었다.

하이브리드 07

송신부에서 사용되는 LED와 소자들의 정격 입력전압이 5V이므로 5V 레귤레이터 7805를 사용하였다. 송신 PC에서 나온 ID 데이터 신호는 RS-232 인터페이스를 통과하여 MAXIM사의 MAX232 라인드라이버로 전송된다. 이는 송신부에서 나오는 전압신호는 -10~10V의 값이 나오게 되는데 각 소자는 0V가 0의 값, 5V가 1의 값을 가지기 때문에 MAX232 라인드라이버를 거쳐 전압 레벨을 조정한다. 라인드라이버를 거친 데이터 신호는 AND 소자(74LS08)에 인가된다. 비캐리어 기반의 간단한 통신 방식이므로 AND소자에서는 또 다른 입력은 5V 입력을 받아 OOK 방식으로 변환하였다. AND 소자의 출력된 신호는 NOT소자 (74LS04)를 통해 반전되며, 이 신호는 팬 아웃을 증가시키기 위해 트랜지스터 베이스단에 입력된다. 트랜지스터의 컬렉터단의 출력은 디지털 데이터 신호로 LED에 전달된다. LED는 전달받은 ID 데이터 신호를 빛 신호로 우리 눈이 구별할 수 없을 정도의 깜빡임으로 전송하게 된다.

하이브리드 08
우선 가시광 송수신부의 커뮤니케이션을 확인하고 최대 송신 거리를 측정하기 위해 송신부 모듈에서 특정 이진 데이터를 송신하고 수신부 모듈에서 확인하는 간단한 실험을 진행하였다.
좌측의 파형은 송신부 PC에서 출력된 디지털신호이다. 라인드라이버를 거치기 전 ±10V 정도의 출력이 나오게 되는데 우측의 파형에 보이는 것처럼 MAX232 라인드라이버를 거친 파형은 약 0~5V의 TTL 레벨로 변환된다.
송신부 또한 입력전압으로 9V 배터리를 사용하였으며 7805레귤레이터를 사용하여 5V를 인가하였다. LED를 통해 받은 빛신호를 전기적 신호로 바꾸기 위해 수광다이오드를 사용하였다. 포토 다이오드를 거친 데이터 신호는 보다 먼 거리 통신을 위하여 Op-amp를 이용하여 전압 증폭하였다. 증폭된 신호는 RS-232신호로 레벨을 바꾸기 위해 Maxim사의 MAX232 칩으로 전달되어 송신부 PC에서 보낸 데이터와 동일한 데이터를 출력한다. 이 신호는 RS-232단을 통하여 수신부 모듈 PC에 도달한다.

하이브리드 09하이브리드 10
좌측의 파형은 수광다이오드에서 수신한 시그널이다. 송신 모듈에서 송신한 데이터와 동일한 데이터인 4V정도의 TTL 신호가 수신되었다. 우측 파형은 Op-amp 연산증폭기를 거쳐 증폭시킨 뒤 MAX232 라인드라이버를 통과한 파형이다. TTL 레벨의 신호가 수신부 PC에서 읽을 수 있도록 RS-232레벨로 변환되었다.
가시광 송수신부 커뮤니케이션 실험은 다음과 같이 진행되었으며, 송신부 PC의 이진데이터를 가시광 송신부로 전송하고 LED의 깜빡임을 통해 수신부 PC로 전송된 이진 데이터를 확인하였다. 최대 송신 거리는 형광등 불빛 간섭, 물체, 방향각 등 변수에 따라 조금씩 오차가 있었지만 최대 80cm 까지 성공하였다.

하이브리드 11 하이브리드 12

3-2. 하이브리드 측위 실험
완성된 가시광 송수신 모듈과 TI사의 CC2430 지그비 모듈을 사용하여 비캐리어 기반 지그비 다중 홉 무선 네트워크 전송 하이브리드 측위 실험을 수행하였다.
하이브리드 측위 실험은 다음과 같이 진행되었다. 실험장소는 한림대학교 공학관 3층에서 진행되었으며, 건물 3층 복도에 목표물이 있고 약 78m 떨어진 비가시거리 환경에서 동일 건물내 1319호 방안에 있는 관찰자가 있는 조건을 가지는 장거리 범위의 측위 실험을 수행하였다. 목표물 주변에는 비캐리어 OOK NRZ 형식의 가시광 송수신기가 있으면서 1351 호 방 앞면에 있는 목표물에게 ID 데이터를 제공하고, 또한 멀리 떨어진 목표물 조건에서의 추정 실험 환경을 만들기 위해 추가로 중계 기능의 노드들, 중계노드1, 중계노드2, 중계노드3을 그림에서 보이는거와 같이, 1344호, 1339호, 1326호 방 앞에 각각 설치하였다.

하이브리드 13

 

하이브리드 14 하이브리드 15

측위 가능한 면적을 키우기 위해, 가시광 송수신기, 데이터 생성PC, 그리고 관측노드를 1351호 앞으로 위치하고, 중계노드 1을 1326호 앞에, 중계노드 2를 1339호, 중계노드 3을 1344호 앞에 위치하였다. 3개의 중계노드를 사용하여 최대 78m 떨어진 비가시거리까지 거리를 연장하였다.
가시광 송신 모듈을 사용하여 그림 우측에 있는 PC로부터 위치 데이터를 생성한 후, 가시광 채널을 통해 가시광 수신 모듈로 전송한다. 그러면 수신신호는 관측노드에 의해 디지털 데이터로 변환되고, 2.4GHz OQPSK-DSSS 형식의 지그비 무선 신호로 다시 변환되고, RF 신호는 무선 채널을 통해 주노드로 전달된다. 주노드가 전달된 RF 신호를 수신한 후, 주노드 동작의 역변환 과정이 수행된다. 마지막으로 복원된 위치 데이터는 그림 좌측에 있는 PC에 표시되고, 하이브리드 측위를 위한 시스템 동작이 반복적으로 계속된다. 실험 결과 관찰자가 목표물 주변의 위치 데이터를 수신하였고 무선 네트워크 기반 하이브리드 측위 실험이 성공적으로 수행된 것을 볼 수 있었고 증명하였다.

4. 결론
극도의 저 수신오류 특징의 가시광 통신 방식과 휴대성, 저전력, 우수한 보안성, 측위 서비스 범위의 자연스런 확장성 특징들을 가진 지그비 무선 네트워크를 서로 융합하여 편리하고 정확한 새로운 하이브리드 측위 시스템을 구현하고 개발하였다.
무선채널 특성 때문에 발생되는 측위 추정 오차를 줄이기 위해 가시광과 무선 채널이 융합된 환경에서 근접 측위 방식을 사용하였다. 근접 측위 방식은 수신되는 가시광 신호의 세기로 위치를 추정하기에 측위 오차가 존재한다. 보다 정확한 측위를 위해 각 좌표에서의 크기를 기록한 뒤 측정되는 가시광 세기를 비교하여 측위를 하는 Fingerprinting 방식 연구를 진행할 계획이다. 더불어, 비캐리어 기반 방식은 좁은 범위의 가시광 수신과 저주파 잡음에 취약하기 때문에 4MHz 캐리어 가시광 통신 회로를 사용하여 본 프로젝트 실험을 연장할 계획이다. 향후, 주노드에서 얻은 위치 정보를 다시 관측 노드로 보내는 과정에 대한 추가 연구, 캐리어 기반 가시광 통신 회로를 사용한 정지 또는 저속 영상 전송 연구를 진행할 것이다.

 

 

RexBot3D 홍콩에 진출하다~!!

현수막

현수막지난 10월 13일 ~16일 아시아 최대 전자부품 전시회인 홍콩 추계전자전 [ Hong Kong Electronics Fair(Autumn Edition)] 에 엔티렉스가 참가하였습니다.

 이번 추계 전시회는 22개국 3,515개 업체가 참가하였으며, 150개국 64,554명의 바이어가

참관을 하였습니다.

IMG_5205IMG_5219IMG_5237

 

춘계 전시회에 이어서 추계 전시회에도 참가하였는데, 춘계 전시회에 비해서는 홍콩 민주화 시위 여파로 바이어수는 다소 줄었지만, RexBot에 대한 뜨거운 관심은 여전하였습니다^^

저희 RexBot3D는 이번에 OC-120 모델과 OC-200 두 가지 모델을 전시하였는데,  두 가지 모델 모두 고객들의 관심을 끌었지만 특히 OC-120모델은 작고 귀여운 사이즈와 4가지 다양한 컬러로 고객들의 큰 호응을 얻었습니다.

또한 제품의 디자인뿐만 아니라, 우수한 퀄리티에 가격경쟁력까지 갖추고 있다는 호평을 들었습니다. 곧 국내뿐만이 아닌 해외에서도 한국 3D 프린터의 우수성을 알릴 수 있게될 것 같습니다^^

그리고, 이번 OC-120모델은 완제품 뿐만이 아니라 DIY KIT 로도 출시하여 자작에 관심이 있는분이나, 학교 등 교육기관에서도 다양하게 활용이 가능하도록 하였으니, 많은 관심 부탁드립니다.

IMG_5247IMG_5224IMG_5240

 

국내에서도 이번주 공식 출시를 하면서 큰 관심을 받고 있는 RexBot3D OC-120 제품은 완제품 89만원 (VAT별도), DIY KIT 75만원 (VAT별도)에 판매되고 있습니다. 

RexBot3D OC-200 모델은 Single과 Dual 노즐로 11월말에 출시될 예정이니, 조금만 기다려 주시면 우수한 제품으로 보답해 드리겠습니다.

RexBot3D 제품의 구매나 상세정보를 원하시면 아래 링크를 참조해주세요.

RexBot3D 자세히 보러가기