<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>NTREXGO - 디바이스마트, 엔티렉스 컨텐츠 통합 사이트 &#187; 26호</title>
	<atom:link href="http://www.ntrexgo.com/archives/tag/26%ed%98%b8/feed" rel="self" type="application/rss+xml" />
	<link>http://www.ntrexgo.com</link>
	<description>엔티렉스, 디바이스마트 컨텐츠 통합 사이트</description>
	<lastBuildDate>Thu, 03 Mar 2022 06:47:11 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>[26호] ICT 융합 공모전 &#8211; 적외선 라인트레이서</title>
		<link>http://www.ntrexgo.com/archives/27177</link>
		<comments>http://www.ntrexgo.com/archives/27177#comments</comments>
		<pubDate>Mon, 01 Sep 2014 08:17:19 +0000</pubDate>
		<dc:creator>디바이스마트 매거진</dc:creator>
				<category><![CDATA[디바이스마트 매거진]]></category>
		<category><![CDATA[특집]]></category>
		<category><![CDATA[26호]]></category>
		<category><![CDATA[Feature]]></category>
		<category><![CDATA[ict]]></category>
		<category><![CDATA[공모전]]></category>
		<category><![CDATA[디바이스마트]]></category>
		<category><![CDATA[매거진]]></category>
		<category><![CDATA[융합]]></category>
		<category><![CDATA[프로젝트]]></category>

		<guid isPermaLink="false">http://www.ntrexgo.com/?p=27177</guid>
		<description><![CDATA[디바이스마트 매거진 26호 &#124; 전면에 장착된 5개의 적외선 센서를 지면 방향으로 배치하여, 검은 라인을 인식하여 본체의 위치를 비교하고 라인 위에서의 라인트레이서 본체의 위치를 파악한 뒤, 이 위치에 따라 구동부인 DC모터의 속력을 조절한다.]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-20.jpg" rel="lightbox[27177]"><img class="alignnone size-full wp-image-27197" alt="적외선 20" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-20.jpg" width="620" height="206" /></a></p>
<p><strong>적외선 라인트레이서</strong></p>
<p style="text-align: right">글 | 고려대학교 세종캠퍼스 제어계측공학과 홍태우</p>
<p><strong>1. 작품 개요</strong></p>
<p>· 적외선 센서를 이용하여, 검은 라인과 흰 바탕으로 구성된 맵의 인식기능 구현<br />
· 검은 라인을 따라가며, 주행 중 스스로 라인에 맞춰 진행 방향을 보정기능 구현</p>
<p><strong>2. 작품 설명</strong><br />
<span style="color: #666699"><strong>2.1. 제작동기</strong></span><br />
학술동아리 내에서 프로젝트를 진행하기 위해 기본적인 ATmega128 학습을 진행하였습니다. 그 결과 학습한 것이 DC모터의 방향 제어와, 속도 제어를 위한 PWM 파형 출력 방법이었습니다. 그 외에 센서를 활용해보기 위해, 기본적인 센서인 적외선 센서와, 적외선 센서에 적용 할 수 있는 LOW PASS Filter를 학습 했었습니다. 학습해본 것들을 모두 적용하기 적절한 프로젝트를 찾던 중, 라인트레이서가 제일 적합하다 판단되었고, 제작을 진행하게 되었습니다.</p>
<p><span style="color: #666699"><strong>2.2. 주요 동작 및 특징</strong></span><br />
<strong>라인 인식 및 위치 인식 비교원리</strong><br />
전면에 장착된 5개의 적외선 센서를 지면 방향으로 배치하여, 검은 라인을 인식하여 본체의 위치를 비교합니다. 라인 위에서의 라인트레이서 본체의 위치를 파악한 뒤, 이 위치에 따라 구동부인 DC모터의 속력을 조절합니다. DC모터는 후면에 두 개가 장착되어 있으며, 방향 조절은 각각 모터의 속도 차이로 조작하게 됩니다. 라인에서 밖으로 나가게 된 경우, 인식 중이던 나가기 직전까지의 방향 및 라인에서의 위치를 피드백 받아, 다시 라인을 찾아 주행을 지속합니다.</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-02.jpg" rel="lightbox[27177]"><img class="alignnone size-full wp-image-27179" alt="적외선 02" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-02.jpg" width="620" height="379" /></a><br />
센서의 발광부에서 쏴준 적외선 중, 지면에서 반사된 수광부로 받은 신호 중 고주파 신호는 걸러내고, 저주파 신호만 사용하게 하였습니다.</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-03.jpg" rel="lightbox[27177]"><img class="alignnone size-full wp-image-27180" alt="적외선 03" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-03.jpg" width="620" height="246" /></a><br />
빛의 특성인 검은색에서는 흡수당하고, 흰색에서는 반사당하는 원리를 적외선 센서에도 적용합니다. 적외선을 방출하는 발광부와 적외선을 수신하는 수광부를 나눠 설치하여, 적외선이 반사되는지(검은 라인 위), 반사되지 않는지(흰 바탕 위)를, 적외선의 수신 강도로 판단하며, 이것을 ADC로 디지털화하여 ATmega128이 인식하게 됩니다.</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-04.jpg" rel="lightbox[27177]"><img class="alignnone size-full wp-image-27181" alt="적외선 04" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-04.jpg" width="620" height="251" /></a><br />
회로도의 캐패시터(47uF)는 고주파는 GND로 빼어내어 저주파만 통과시키는 Low Pass Filter의 실질적인 역할을 합니다. 저항들은 Low Pass Filter의 Fc값을 적절하게 맞춰주기 위하여 맞춤설정한 것입니다. 따라서 ATmega 128의 ADC로 Low Pass Filter에서 걸러진 저주파가 입력되며, 이것을 사용하여 센서는 기능을 수행하게 됩니다.</p>
<p><span style="color: #666699"><strong>2.3. 전체 시스템 구성</strong></span><br />
라인트레이서의 시스템은 위에서 설명했다시피, 크게 DC모터와 적외선 센서로 구현되어 있습니다. 그 외에는 센서 감지여부 디스플레이용 LED가 장착되어 있습니다.</p>
<p><span style="color: #999999"><strong>가. DC모터부</strong></span><br />
DC모터의 방향제어는 74HC132 NAND gate를 사용하여 포트 하나로 양방향 제어를 하였으며, ATmega 128의 Timer를 이용한 PWM을 출력하여, PWM의 듀티비에 따른 속도의 제어를 하였습니다. 모터 드라이버는 통상적으로 많이 쓰이는 드라이버인 L298N을 사용하였습니다.</p>
<p><strong>DC모터부 적용 소자 데이터 시트</strong><br />
<strong>74HC132N-2bit quadra gate</strong></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-05.jpg" rel="lightbox[27177]"><img class="alignnone size-full wp-image-27182" alt="적외선 05" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-05.jpg" width="620" height="269" /></a><br />
<strong></strong></p>
<p><strong>L298N 모터드라이버</strong></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-06.jpg" rel="lightbox[27177]"><img class="alignnone size-full wp-image-27183" alt="적외선 06" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-06.jpg" width="620" height="282" /></a></p>
<p><span style="color: #999999"><strong>나. 센서부</strong></span><br />
적외선 센서의 발광부에는 ULN2003APG를 적용하여 센서의 적외선 출력을 증폭시켜주었습니다. 수광부에는 위의 회로도와 같이 LOW PASS Filter를 적용하여 주었습니다.</p>
<p><strong>적외선 센서 적용 소자 데이터 시트</strong><br />
<strong>ULN2003APG</strong></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-07.jpg" rel="lightbox[27177]"><img class="alignnone size-full wp-image-27184" alt="적외선 07" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-07.jpg" width="620" height="254" /></a></p>
<p><span style="color: #999999"><strong>다. LED 디스플레이어</strong></span><br />
센서가 센싱하는 값인 ADC를 일정한 값으로 나누어 주어, 검은색/흰색의 두가지 경우로 논리를 나눈 뒤, 검은색일 경우에는 LOW(FALSE), 흰색일 경우에는 HIGH(TRUE)를 출력하여, 검은 라인 위에 있는 센서의 해당 LED는 불이 꺼지도록 만들었습니다. LED 디스플레이를 적용하였을 때, 시각 효과로 인하여 센서와 DC모터의 속도값을 보정하는데 큰 도움이 되었습니다.</p>
<p><span style="color: #999999"><strong>라. 전원부</strong></span><br />
ATmega128에 전원을 공급하기 위하여, 전원인 9V DC를 5V DC로 바꿔주는 LM7805를 사용하여, 전원부를 제작하였습니다. DC모터에 강한 출력을 전달해야 하는 L298N을 제외하고는, 모든 하드웨어 모듈이 전원부에서 나오는 5V 출력을 이용하여 동작합니다.</p>
<p><strong>하드웨어 구성 및 신호전달 체계</strong></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-08.jpg" rel="lightbox[27177]"><img class="alignnone size-full wp-image-27185" alt="적외선 08" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-08.jpg" width="620" height="445" /></a></p>
<p><span style="color: #666699"><strong>2.4. 개발환경</strong></span><br />
라인트레이서에 사용된 MCU는 ATmega128이며, 소스코드 개발은 Code Vision AVR(CV AVR)로 진행하였습니다.</p>
<p><strong>3. 단계별 제작과정</strong><br />
<strong>모듈별 제작 및 학습기간(13/10/7~13/11/25)</strong></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-09.jpg" rel="lightbox[27177]"><img class="alignnone size-full wp-image-27186" alt="적외선 09" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-09.jpg" width="620" height="396" /></a></p>
<p><span style="color: #999999"><strong>가. DC모터 속도 제어용 PWM 파형 생성 실험</strong></span></p>
<p><span style="color: #999999"><strong><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-10.jpg" rel="lightbox[27177]"><img class="alignnone size-full wp-image-27187" alt="적외선 10" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-10.jpg" width="620" height="287" /></a></strong></span><br />
<span style="color: #999999"><strong>나. 1차 하드웨어 제작 및 DC모터 방향, 속도제어 실험</strong></span></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-11.jpg" rel="lightbox[27177]"><img class="alignnone size-full wp-image-27188" alt="적외선 11" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-11.jpg" width="620" height="318" /></a><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-12.jpg" rel="lightbox[27177]"><img class="alignnone size-full wp-image-27189" alt="적외선 12" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-12.jpg" width="620" height="207" /></a></p>
<p><span style="color: #999999"><strong>다. 적외선 센서 제작 및 작동 실험</strong></span></p>
<p><img class="alignnone size-full wp-image-27190" alt="적외선 13" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-13.jpg" width="620" height="349" /></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-14.jpg" rel="lightbox[27177]"><img class="alignnone size-full wp-image-27191" alt="적외선 14" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-14.jpg" width="620" height="208" /></a><br />
<span style="color: #999999"><strong>라. 2차 하드웨어(완성) 제작 및 LED 디스플레이어 적용, 센서 및 LED 추가</strong></span></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-15.jpg" rel="lightbox[27177]"><img class="alignnone size-full wp-image-27192" alt="적외선 15" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-15.jpg" width="620" height="349" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><strong>프레임 및 납땜 제작과정</strong></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-16.jpg" rel="lightbox[27177]"><img class="alignnone size-full wp-image-27193" alt="적외선 16" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-16.jpg" width="620" height="438" /></a></p>
<p>&nbsp;</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-17.jpg" rel="lightbox[27177]"><img class="alignnone size-full wp-image-27194" alt="적외선 17" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-17.jpg" width="620" height="438" /></a></p>
<p>&nbsp;</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-18.jpg" rel="lightbox[27177]"><img class="alignnone size-full wp-image-27195" alt="적외선 18" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-18.jpg" width="620" height="438" /></a></p>
<p>&nbsp;</p>
<p><strong style="color: #999999">마. 라인 트레이서 작동 확인</strong></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-19.jpg" rel="lightbox[27177]"><img class="alignnone size-full wp-image-27196" alt="적외선 19" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/적외선-19.jpg" width="620" height="447" /></a></p>
<p><strong>4. 기타(회로도, 소스코드)</strong></p>
<p><span style="color: #999999"><strong>가. 소스코드</strong></span></p>
<div class="symple-box yellow none" style="text-align:left; width:100%;"> 
<p>#include &lt;mega128.h&gt;<br />
#include &lt;delay.h&gt;<br />
#include &lt;stdio.h&gt;</p>
<p>#define First 3<br />
#define Second 2<br />
#define Third 1<br />
#define Fourth 0<br />
#define Fifth 4<br />
#define Sixth 7<br />
#define Seventh 5<br />
#define Eighth 6</p>
<p>unsigned int Fi,Se,Th,Fo,Ff,Si,Sv,Ei;</p>
<p>int start,check,a,b,c,d,e,f,g,h;</p>
<p>#define ADC_VREF_TYPE ((0&lt;&lt;REFS1) | (1&lt;&lt;REFS0) | (1&lt;&lt;ADLAR))<br />
// Read the 8 most significant bits<br />
// of the AD conversion result<br />
unsigned char read_adc(unsigned char adc_input)<br />
{<br />
ADMUX=adc_input | ADC_VREF_TYPE;<br />
delay_us(10);<br />
ADCSRA|=(1&lt;&lt;ADSC);<br />
while ((ADCSRA &amp; (1&lt;&lt;ADIF))==0);<br />
ADCSRA|=(1&lt;&lt;ADIF);<br />
return ADCH;<br />
}<br />
////////////////////////////////발광부 설정<br />
unsigned int sensor(unsigned int si)<br />
{<br />
unsigned int ret;</p>
<p>switch(si)<br />
{<br />
case First:<br />
PORTE.4=0;<br />
delay_us(50);<br />
ret=read_adc(si);<br />
PORTE.4=1;<br />
break;</p>
<p>case Second:<br />
PORTE.2=0;<br />
delay_us(50);<br />
ret=read_adc(si);<br />
PORTE.2=1;<br />
break;</p>
<p>case Third:<br />
PORTE.1=0;<br />
delay_us(50);<br />
ret=read_adc(si);<br />
PORTE.1=1;<br />
break;</p>
<p>case Fourth:<br />
PORTE.0=0;<br />
delay_us(50);<br />
ret=read_adc(si);<br />
PORTE.0=1;<br />
break;</p>
<p>case Fifth:<br />
PORTE.3=0;<br />
delay_us(50);<br />
ret=read_adc(si);<br />
PORTE.3=1;<br />
break;</p>
<p>case Sixth:<br />
PORTE.7=0;<br />
delay_us(50);<br />
ret=read_adc(si);<br />
PORTE.7=1;<br />
break;</p>
<p>case Seventh:<br />
PORTE.6=0;<br />
delay_us(50);<br />
ret=read_adc(si);<br />
PORTE.6=1;<br />
break;</p>
<p>case Eighth:<br />
PORTE.5=0;<br />
delay_us(50);<br />
ret=read_adc(si);<br />
PORTE.5=1;<br />
break;<br />
}<br />
return ret;<br />
}</p>
<p>void main(void)<br />
{<br />
////////////////////모터관련 레지스터 설정<br />
DDRA.0=1;<br />
DDRA.1=1;</p>
<p>DDRB=0xFA;<br />
PORTB=0&#215;00;</p>
<p>TCCR1A=0xA3;<br />
TCCR1B=0&#215;03;</p>
<p>OCR1AH=0&#215;00;<br />
OCR1AL=0&#215;00;</p>
<p>OCR1BH=0&#215;00;<br />
OCR1BL=0&#215;00;</p>
<p>////////////////////센서관련 레지스터 설정<br />
DDRF=0&#215;00;<br />
PORTF=0xFF;</p>
<p>DDRE=0xFF;</p>
<p>ACSR=(1&lt;&lt;ACD) | (0&lt;&lt;ACBG) | (0&lt;&lt;ACO) | (0&lt;&lt;ACI) | (0&lt;&lt;ACIE) | (0&lt;&lt;ACIC) | (0&lt;&lt;ACIS1) | (0&lt;&lt;ACIS0);<br />
ADMUX=ADC_VREF_TYPE;<br />
ADCSRA=(1&lt;&lt;ADEN) | (0&lt;&lt;ADSC) | (0&lt;&lt;ADFR) | (0&lt;&lt;ADIF) | (0&lt;&lt;ADIE) | (1&lt;&lt;ADPS2) | (0&lt;&lt;ADPS1) | (1&lt;&lt;ADPS0);<br />
SPCR=(0&lt;&lt;SPIE) | (0&lt;&lt;SPE) | (0&lt;&lt;DORD) | (0&lt;&lt;MSTR) | (0&lt;&lt;CPOL) | (0&lt;&lt;CPHA) | (0&lt;&lt;SPR1) | (0&lt;&lt;SPR0);<br />
TWCR=(0&lt;&lt;TWEA) | (0&lt;&lt;TWSTA) | (0&lt;&lt;TWSTO) | (0&lt;&lt;TWEN) | (0&lt;&lt;TWIE);</p>
<p>////////////////////LED관련 레지스터 설정<br />
DDRC=0xFF;<br />
PORTC=0&#215;00;</p>
<p>////////////////////스위치 관련 레지스터 설정<br />
DDRD=0b11111100;</p>
<p>EICRA=0x0a;<br />
EICRB=0&#215;00;<br />
EIMSK=0&#215;03;<br />
SREG=0&#215;80;</p>
<p>/////////////////////////반복문 시작</p>
<p>while (1)<br />
{<br />
///////////////////////센서, 칩 LED 설정<br />
Fi=sensor(First);<br />
Se=sensor(Second);<br />
Th=sensor(Third);<br />
Fo=sensor(Fourth);<br />
Ff=sensor(Fifth);<br />
Si=sensor(Sixth);<br />
Sv=sensor(Seventh);<br />
Ei=sensor(Eighth);</p>
<p>Fi/=55;<br />
Se/=53;<br />
Th/=62;<br />
Fo/=60;<br />
Ff/=50;<br />
Si/=40;<br />
Sv/=40;<br />
Ei/=40;</p>
<p>if(Fi&gt;1)<br />
{PORTD.6=1;a=1;}<br />
else<br />
{PORTD.6=0;a=0;}</p>
<p>if(Se&gt;1)<br />
{PORTD.5=1;b=1;}<br />
else<br />
{PORTD.5=0;b=0;}</p>
<p>if(Th&gt;1)<br />
{PORTD.4=1;c=1;}<br />
else<br />
{PORTD.4=0;c=0;}</p>
<p>if(Fo&gt;1)<br />
{PORTD.3=1;d=1;}<br />
else<br />
{PORTD.3=0;d=0;}</p>
<p>if(Ff&gt;1)<br />
{PORTD.2=1;e=1;}<br />
else<br />
{PORTD.2=0;e=0;}</p>
<p>if(Si&gt;1)<br />
{PORTC.2=1;f=1;}<br />
else<br />
{PORTC.2=0;f=0;}</p>
<p>if(Sv&gt;1)<br />
{PORTC.7=1;g=1;}<br />
else<br />
{PORTC.7=0;g=0;}</p>
<p>if(Ei&gt;1)<br />
{PORTC.4=1;h=1;}<br />
else<br />
{PORTC.4=0;h=0;}<br />
///////////////////////센서, 칩 LED 설정 끝</p>
<p>///////////////////////맵핑 코드 시작<br />
///////////////////////주석의 오차만큼 모터 속도 제어(PWM)</p>
<p>if(a==0&amp;b==0&amp;c==1&amp;d==0&amp;e==0)////////직진<br />
{<br />
PORTA.1=1;<br />
PORTA.0=1;</p>
<p>OCR1AH=0x5E;<br />
OCR1AL=0xAF;</p>
<p>OCR1BH=0xEF;<br />
OCR1BL=0xDF;<br />
}</p>
<p>else if(a==0&amp;b==1&amp;c==1&amp;d==0&amp;e==0)/////////오른쪽오차1<br />
{<br />
PORTA.1=1;<br />
PORTA.0=1;</p>
<p>OCR1AH=0x5D;<br />
OCR1AL=0xAF;</p>
<p>OCR1BH=0xEF;<br />
OCR1BL=0xDF;<br />
}</p>
<p>else if(a==0&amp;b==1&amp;c==0&amp;d==0&amp;e==0)/////////오른쪽오차2<br />
{<br />
PORTA.1=1;<br />
PORTA.0=1;</p>
<p>OCR1AH=0x5D;<br />
OCR1AL=0xAF;</p>
<p>OCR1BH=0xEF;<br />
OCR1BL=0xCF;<br />
}</p>
<p>else if(a==1&amp;b==1&amp;c==0&amp;d==0&amp;e==0)/////////오른쪽오차3<br />
{<br />
PORTA.1=1;<br />
PORTA.0=0;</p>
<p>OCR1AH=0x5E;<br />
OCR1AL=0&#215;00;</p>
<p>OCR1BH=0xFF;<br />
OCR1BL=0x0F;<br />
}</p>
<p>else if(a==1&amp;b==0&amp;c==0&amp;d==0&amp;e==0)/////////오른쪽오차4<br />
{<br />
PORTA.1=1;<br />
PORTA.0=0;</p>
<p>OCR1AH=0x5D;<br />
OCR1AL=0&#215;00;</p>
<p>OCR1BH=0xFF;<br />
OCR1BL=0x0F;<br />
}</p>
<p>else if(a==0&amp;b==0&amp;c==1&amp;d==1&amp;e==0)/////////왼쪽오차1<br />
{<br />
PORTA.1=1;<br />
PORTA.0=1;</p>
<p>OCR1AH=0x5E;<br />
OCR1AL=0xAF;</p>
<p>OCR1BH=0xEE;<br />
OCR1BL=0xDF;<br />
}</p>
<p>else if(a==0&amp;b==0&amp;c==0&amp;d==1&amp;e==0)/////////왼쪽오차2<br />
{<br />
PORTA.1=1;<br />
PORTA.0=1;</p>
<p>OCR1AH=0x5F;<br />
OCR1AL=0xAF;</p>
<p>OCR1BH=0xEE;<br />
OCR1BL=0xDF;<br />
}</p>
<p>else if(a==0&amp;b==0&amp;c==0&amp;d==1&amp;e==1)/////////왼쪽오차3<br />
{<br />
PORTA.1=0;<br />
PORTA.0=1;</p>
<p>OCR1AH=0xFF;<br />
OCR1AL=0xAF;</p>
<p>OCR1BH=0&#215;00;<br />
OCR1BL=0xFF;<br />
}</p>
<p>else if(a==0&amp;b==0&amp;c==0&amp;d==0&amp;e==1)/////////왼쪽오차4<br />
{<br />
PORTA.1=0;<br />
PORTA.0=1;</p>
<p>OCR1AH=0xFF;<br />
OCR1AL=0xAF;</p>
<p>OCR1BH=0&#215;00;<br />
OCR1BL=0xFF;<br />
}</p>
<p>else/////////STOP<br />
{<br />
PORTA.1=0;<br />
PORTA.0=0;</p>
<p>OCR1AH=0&#215;00;<br />
OCR1AL=0x2F;</p>
<p>OCR1BH=0&#215;00;<br />
OCR1BL=0x3F;<br />
}</p>
<p>}</p>
<p>}</p>
<p>////////////////////////////////스위치 인터럽트<br />
interrupt [EXT_INT0] void external_int0(void)<br />
{<br />
start=1;<br />
}</p>
<p>interrupt [EXT_INT1] void external_int1(void)<br />
{<br />
start=0;<br />
}<br />
</div>
<p><span style="color: #999999"><strong>나. 회로도    </strong></span></p>
<p><strong>1. 모터 드라이버 회로도</strong></p>
<p><strong style="color: #999999"><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/L298N회로도.jpg" rel="lightbox[27177]"><img class="alignnone size-full wp-image-27198" alt="L298N회로도" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/L298N회로도.jpg" width="566" height="339" /></a></strong></p>
<p><strong>2. 센서부 회로도</strong></p>
<p><strong><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/센서-회로도.jpg" rel="lightbox[27177]"><img alt="센서 회로도" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/센서-회로도.jpg" width="567" height="163" /></a></strong></p>
<p><strong>3. 전원부 회로도</strong></p>
<p><img class="alignnone size-large wp-image-27201" alt="전원부 납땜" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/전원부-납땜-620x214.jpg" width="620" height="214" /></p>
<p><strong>4. 스위치 및 LED 회로도</strong><strong> </strong></p>
<p><strong><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/스위치-LED-회로도.jpg" rel="lightbox[27177]"><img alt="스위치, LED 회로도" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/스위치-LED-회로도-620x217.jpg" width="620" height="217" /></a></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ntrexgo.com/archives/27177/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[26호] ICT 융합 공모전 &#8211; 아끼슈</title>
		<link>http://www.ntrexgo.com/archives/27147</link>
		<comments>http://www.ntrexgo.com/archives/27147#comments</comments>
		<pubDate>Mon, 01 Sep 2014 08:07:56 +0000</pubDate>
		<dc:creator>디바이스마트 매거진</dc:creator>
				<category><![CDATA[디바이스마트 매거진]]></category>
		<category><![CDATA[특집]]></category>
		<category><![CDATA[26호]]></category>
		<category><![CDATA[Feature]]></category>
		<category><![CDATA[ict]]></category>
		<category><![CDATA[공모전]]></category>
		<category><![CDATA[디바이스마트]]></category>
		<category><![CDATA[매거진]]></category>
		<category><![CDATA[융합]]></category>
		<category><![CDATA[프로젝트]]></category>

		<guid isPermaLink="false">http://www.ntrexgo.com/?p=27147</guid>
		<description><![CDATA[디바이스마트 매거진 26호 &#124; 사용할수록 줄어드는 휴지의 반지름을 가변저항으로 측정하여 모터의 회전수와 속도를 조정하였고 일정량의 화장지가 나오도록 설계하였다. ]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-01.jpg" rel="lightbox[27147]"><img alt="레이저하프 01" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-01.jpg" width="620" height="200" /></a></p>
<p style="text-align: right">글 | 단국대학교 전자전기공학부 학술동아리 서원호, 김재현, 하원빈, 이지은</p>
<p> 환경 보호 차원에서 화장지를 아껴쓰자는 메시지를 전달하기 위해 화장지를 뜻하는 영어단어인 ‘tissue’ 와 우리말 ‘아껴쓰다.’ 을 합쳐 만들어진 작품제목이다.</p>
<p>현대사회에서 환경오염은 불가피하게 되었고 전 세계적으로 환경 문제가 더 이상 선택이 아닌 생존의 문제라는 인식이 고조되고 있다. 하지만 현재 우리 지구의 환경오염 발생 원인은 복잡하게 얽혀 있고, 피해 정도를 정확히 파악할 수가 없는 실정이다. 원상회복에도 많은 시간이 걸릴 것이며, 정치 경제 사회 문화 등 총체적 방법을 강구해야 할 것이다.<br />
이 시점에서 우리는 우리의 생활 속에서 실천할 수 있는 작은 것들이 모인다면 환경문제가 조금씩 해결될 수 있다는 희망을 가지고 매일 가는 화장실에서 흔히 볼 수 있는 두루마리 휴지에서부터 작은 실천을 시작하려고 한다. 화장지의 무분별한 사용을 막기 위해 아이디어를 구상하게 되었고 옆의 첨부 사진들은 수많은 사람들의 다양하고 기발한 아이디어이다.</p>
<p><img class="alignnone size-full wp-image-27149" alt="아끼슈 02" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-02.jpg" width="620" height="306" /></p>
<p>화장지를 뽑을 때 지구의 색이 초록색에서 검정색으로 바뀜으로써 사용자에게 지구가 병들어 가고 있다는 메시지를 전달하고 있다.</p>
<p><img class="alignnone size-full wp-image-27150" alt="아끼슈 03" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-03.jpg" width="620" height="236" /></p>
<p>화장지가 뜯겨 나갈 때마다 나무도 함께 잘려나가는 모습을 보여줌으로써 사용자의 화장지 절약의식을 일깨워 주고 있다.</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-04.jpg" rel="lightbox[27147]"><img class="alignnone size-full wp-image-27151" alt="아끼슈 04" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-04.jpg" width="620" height="236" /></a></p>
<p>흔히 볼 수 있는 둥글한 심이 아닌 네모난 심을 사용해서 의도치 않은 화장지 과사용을 방지하고 있다.</p>
<p><strong>1. 선행연구</strong></p>
<table style="width: 620px" border="1" cellspacing="0" cellpadding="2">
<tbody>
<tr>
<td>일정</td>
<td>내용</td>
<td>비고</td>
</tr>
<tr>
<td>~3.14</td>
<td>개별 아이디어 구상</td>
<td></td>
</tr>
<tr>
<td>3.15</td>
<td>1차 회의</td>
<td>아이디어 채택 및 R&amp;R 정하기</td>
</tr>
<tr>
<td>3.16~3.21</td>
<td>요구사항 명세, 분석</td>
<td>실패사례 조사하고 분석하기</td>
</tr>
<tr>
<td>3.22</td>
<td>2차 회의</td>
<td>구체적 설계, 부품 구매</td>
</tr>
<tr>
<td>3.23~3.31</td>
<td>개발 및 보고서 작성</td>
<td></td>
</tr>
</tbody>
</table>
<p><strong>요구사항</strong></p>
<table style="width: 620px" border="1" cellspacing="0" cellpadding="2">
<tbody>
<tr>
<td>요구사항</td>
<td>요구사항 내용</td>
<td>상세 내용</td>
</tr>
<tr>
<td>사용자</td>
<td>화장지의 적정량만 사용하고 싶다.</td>
<td>상황에 따른 화장지의 적정량을 알아야한다.</td>
</tr>
<tr>
<td>사용자</td>
<td>상황에 따라 버튼을<br />
선택해 눌러서 화장지를 사용하고 싶다.</td>
<td>외부에 적당한 위치에 스위치를 달아서 사용자가 편리하게 휴지를<br />
뽑아 쓸 수 있도록 한다.</td>
</tr>
<tr>
<td>시스템</td>
<td>화장지의 반지름에<br />
따라 모터의 회전이<br />
달라져야한다.</td>
<td>화장지가 줄어들수록 같은 회전에도 적은양의 화장지가 나오므로<br />
줄어들면 줄어들수록 모터의 회전수가 증가한다.</td>
</tr>
<tr>
<td>시스템</td>
<td>화장지의 반지름을<br />
알 수 있어야한다.</td>
<td>가변저항을 이용하여 화장지의 반지름을 실시간으로 측정한다.<br />
고무줄의 탄성을 이용해서  길이를 조절할 수 있다.</td>
</tr>
</tbody>
</table>
<p><strong>실패 사례</strong><br />
물가 상승률이 월급 인상률을 넘어서는 일이 잦아지면서 아껴야 잘 산다는 말이 새삼 뼈에 사무치는 시절이다. 1997년 경기 성남시의 이모씨는 우리가 일상생활에서 가장 쉽게 낭비하고 있는 물자의 하나인 두루마리 휴지를 아낄 수 있는 휴지걸이를 개발, 특허를 출원했다. 이 아이템은 기존 휴지걸이의 경우 별도의 제동장치가 없기 때문에 사용자가 휴지의 끝을 잡아당기면 회전력에 의해 필요이상으로 많은 길이가 풀린다는 점에 착안했다. 이에 출원인은 별도의 장치를 통해 휴지걸이의 원통부분이 특정 횟수까지 회전하면 자동으로 멈추도록 설계했다. 이런 방식으로 한 번에 정해진 양만큼만 휴지가 풀리도록 해 낭비를 줄일 수 있다는 게 출원인의 주장이다. 또한 원통의 회전이 정지하면서 자연스럽게 휴지가 끊기므로 현재와 같이 두 손을 모두 사용하지 않고, 한 손으로도 손쉽게 적정량의 휴지를 얻을 수 있어 편의성도 높아진다는 설명이다. 특허청은 참신한 아이디어가 돋보이는 이 특허의 등록을 허락했다. 하지만 출원인의 등록료 불납으로 현재는 권리가 소멸된 상태다. 왜 그랬을까. 아마도 원통의 회전수로 정지 시점을 설정하면 휴지를 쓸수록 그 둘레가 줄어들어 한 번에 손에 쥘 수 있는 양도 줄어드는 한계를 인식한 것이 아닐까.<br />
위 실패 사례를 통해 우리는 원통의 일정한 회전수만으로는 한계가 있다는 것을 알았다. 시시각각변하는 휴지의 반지름을 어떻게 알아낼 것인지가 이번 작품의 가장 큰 논점이 될 것이다.</p>
<p><strong>2. 작품 설명</strong><br />
우리는 특히 화장실에서 사용하는 화장지의 무분별한 사용을 줄여보자는 취지로 작품을 고안하였기 때문에 우리나라 사람들의 평균 화장실 휴지 사용량을 조사결과를 참고하였다.<br />
<a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-07.jpg" rel="lightbox[27147]"><img class="wp-image-27153 aligncenter" alt="아끼슈 07" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-07-619x620.jpg" width="500" /></a></p>
<p><strong>2.1 주요 동작 및 특징</strong><br />
사용자가 사용 목적에 따라 버튼을 선택하여 누르면 적정량의 휴지만 나오게 함으로써 낭비되는 휴지가 없도록 하였다.<br />
사용할수록 줄어드는 휴지의 반지름을 가변저항으로 측정하여 모터의 회전수와 속도를 조정하였고 일정량의 화장지가 나오도록 설계하였다. 줄어들면서 일정한 양이 나오는데 걸리는 시간이 증가하므로 모터의 회전수를 반지름이 줄어들수록 증가하게 설계하였다.</p>
<p><strong>2.2. 전체 시스템 구성</strong><br />
<strong>• 주요 부품 소개</strong><br />
<a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-08.jpg" rel="lightbox[27147]"><img class="alignnone size-full wp-image-27154" alt="아끼슈 08" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-08.jpg" width="620" height="195" /></a><br />
DC모터 : 6V 의 DC 모터를 사용하여 휴지롤을 돌리고자 하였다.<br />
가변저항 : 가변저항을 통해 나오는 값을 아두이노의 ADC를 이용하여 값을 처리하여 휴지의 남은 양을 계산한다.<br />
아두이노 : 아두이노는 ADC input을 반지름 계산 알고리즘을 연산하여 DC MOTOR로 OUTPUT해주는 역할을 한다.</p>
<p><strong>2.3. 개발 환경</strong><br />
<a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-09.jpg" rel="lightbox[27147]"><img class="alignnone size-full wp-image-27155" alt="아끼슈 09" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-09.jpg" width="620" height="174" /></a><br />
Macintosh 및 Arduino IDE환경에서 C언어로 코딩하였다. CAD tool로는 Fritzing을 사용하였고 FlowChart의 경우 yEd를 사용하였다.</p>
<p><strong>3. 단계별 제작 과정</strong><br />
<a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-10.jpg" rel="lightbox[27147]"><img class="alignnone size-full wp-image-27156" alt="아끼슈 10" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-10.jpg" width="620" height="281" /></a><br />
공공장소에서 흔히 볼 수 있는 크기의 화장지케이스를 기준으로 만들었다.</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-11.jpg" rel="lightbox[27147]"><img class="alignnone size-full wp-image-27157" alt="아끼슈 11" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-11.jpg" width="620" height="228" /></a><br />
바퀴에 고무를 씌워 마찰력을 증가시켰다.</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-12.jpg" rel="lightbox[27147]"><img class="alignnone size-full wp-image-27158" alt="아끼슈 12" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-12.jpg" width="620" height="207" /></a><br />
모터에 베어링을 장착하여 고정하였다.</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-13.jpg" rel="lightbox[27147]"><img class="alignnone size-full wp-image-27159" alt="아끼슈 13" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-13.jpg" width="620" height="383" /></a><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-14.jpg" rel="lightbox[27147]"><img class="alignnone size-full wp-image-27160" alt="아끼슈 14" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-14.jpg" width="620" height="307" /></a></p>
<p>화장지 케이스에 베어링과 합쳐진 모터를 앞 뒤로 단단하게 고정시켰다.</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-15.jpg" rel="lightbox[27147]"><img class="alignnone size-full wp-image-27161" alt="아끼슈 15" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-15.jpg" width="620" height="276" /></a><br />
나무 막대기를 제도해서 지지대로 사용(7cm, 8.5cm)</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-16.jpg" rel="lightbox[27147]"><img class="alignnone size-full wp-image-27162" alt="아끼슈 16" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-16.jpg" width="620" height="273" /></a><br />
플라스틱 막대기를 연결시켜 휴지를 받히게 했고 막대를 가변저항모양에 맞게 갈아 고정시켰다.</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-17.jpg" rel="lightbox[27147]"><img class="alignnone size-full wp-image-27163" alt="아끼슈 17" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-17.jpg" width="620" height="273" /></a><br />
막대기에 고무줄을 끼울 구멍을 뚫고 있다.</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-18.jpg" rel="lightbox[27147]"><img class="alignnone size-full wp-image-27164" alt="아끼슈 18" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-18.jpg" width="620" height="319" /></a><br />
고무줄을 연결시킨 모습</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-19.jpg" rel="lightbox[27147]"><img class="alignnone size-full wp-image-27165" alt="아끼슈 19" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-19.jpg" width="620" height="272" /></a><br />
화장지를 끼웠을 때 끝까지 들어가지 않게끔 턱을 만들었다.</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-20.jpg" rel="lightbox[27147]"><img class="alignnone size-full wp-image-27166" alt="아끼슈 20" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-20.jpg" width="620" height="272" /></a><br />
아두이노 장착</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-21.jpg" rel="lightbox[27147]"><img class="alignnone size-full wp-image-27167" alt="아끼슈 21" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-21.jpg" width="620" height="263" /></a><br />
완성된 모습</p>
<p><strong>4. 반지름 계산 알고리즘</strong><br />
<a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-22.jpg" rel="lightbox[27147]"><img class="alignnone size-full wp-image-27168" alt="아끼슈 22" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-22.jpg" width="620" height="426" /></a><br />
만약 두 측정자의 끼인각이 예각일 경우 반지름은 각도에 따라 선형적으로 증가한다. 하지만 둔각이 될 경우 이는 예각과는 다른 비율로 증가하게 된다. 이는 손쉽게 시리얼 모니터로 확인이 가능하다. 따라서 매핑함수를 이용하여 각각의 경우 다른 반지름으로 초기화를 해준다.<br />
예각인지 둔각인지를 선택하는 것은 OutputValue1, 2중 큰 값을 선택하면 알 수 있다.</p>
<div class="symple-box yellow none" style="text-align:left; width:100%;"> 
<p>outputValue1 = map(sensorValue, 660, 920, 40, 80);<br />
outputValue2 = map(sensorValue, 920, 1020, 81, 145);<br />
</div>
<p>예를 들어 딱 90도가 되었을 때 전자의 값은 80, 후자의 값은 81이 되는데 이후로 각도가 늘어날수록 outputValue1의 경우 근소하게 늘어나고 2의 경우는 많이 늘어나기 때문에 이의 차이를 이용하여 현재 예각인지 둔각인지를 판가름 할 수 있다.<br />
또한 휴지롤의 반지름이 작아지면 같은 속도로 모터가 돌아간다고 해도 휴지가 나오는 속도는 차이가 나게 된다. 이를 보정해 주기 위하여 Distance란 파라미터를 정해놓고 반지름에 따라 모터의 PWM을 변화시켜 반지름이 달라지더라도 최종적으로 나오는 휴지의 속도는 모든 반지름일 때 일정하도록 조정해 주었다.</p>
<div class="symple-box yellow none" style="text-align:left; width:100%;"> 
<p>if(outputValue1 &gt; outputValue2)<br />
{<br />
Distance = Speed/outputValue1/10*50;<br />
}<br />
else<br />
{<br />
Distance = Speed/outputValue2/10*50;<br />
}</p>
</div>
<p><strong>설계의 한계</strong><br />
우리 설계의 경우 6V짜리 DC모터를 사용한다. 보유하고 있는 모터드라이브를 사용하려고 하였으나 DC모터의 구동 전류가 약 800mA이기 때문에 100mA까지 커버하는 모터드라이브로는 이 모터를 구동할 수 없었다. 하지만 1A이상의 모터드라이브를 사용하면 정확하게 작동할 것이라고 생각한다. 때문에 정확하게 한 시나리오에서 구동하는 모습은 보고서에 담을 수 없었지만 추후에 기회가 된다면 좀 더 완성도 높게 제작할 수 있을 것이다.</p>
<p><strong>5. 기타 (회로도, 소스코드, 참고문헌 등)</strong><br />
<strong>• 소스코드</strong></p>
<div class="symple-box yellow none" style="text-align:left; width:100%;"> 
<p>Arduino Code<br />
#define Pwm 5<br />
#define Dir 4<br />
#define Speed 15<br />
#define rpm 3<br />
#define ButtonPin_small 12<br />
#define ButtonPin_Big 11<br />
#define small 2.1</p>
<p>const int analogInPin = A7; // Analog input pin that the potentiometer is attached to<br />
const int analogOutPin = 9; // Analog output pin that the LED is attached to</p>
<p>int sensorValue = 0; // value read from the pot<br />
int outputValue1 = 0; // value output to the PWM (analog out)<br />
int outputValue2 = 0;<br />
float Distance = 0; //반지름에 따른 모터의 PWM 변수<br />
void setup() {<br />
Serial.begin(9600);<br />
pinMode(Pwm, OUTPUT);<br />
pinMode(Dir, OUTPUT);</p>
<p>}<br />
void loop() {</p>
<p>sensorValue = analogRead(analogInPin); // ADC값을 sensorValue에 저장.<br />
outputValue1 = map(sensorValue, 660, 920, 40, 80); //반지름에 따른 Value값 매핑<br />
outputValue2 = map(sensorValue, 920, 1020, 81, 145);<br />
if(outputValue1 &gt; outputValue2)<br />
{<br />
Distance = Speed/outputValue1/10*50;<br />
}</p>
<p>else<br />
{<br />
Distance = Speed/outputValue2/10*50; // 어떤 반지름의 경우라도 결과적으로 나오는 속도는 같게 Parameter값 조정<br />
}</p>
<p>// print the results to the serial monitor:<br />
Serial.print(“sensor = “ );<br />
Serial.print(sensorValue);<br />
Serial.print(“\t output = “);<br />
Serial.print(outputValue1);<br />
Serial.print(“ “);<br />
Serial.println(outputValue2);<br />
if (digitalRead(ButtonPin_small) == LOW) //small button의 경우 소변 Big의 경우 대변<br />
{<br />
Motor_GO(Distance/small); // 소변일 경우 PWM을 감소시켜 휴지가 나오는 양을 적게함<br />
delay(rpm*1000)<br />
}<br />
else if (digitalRead(ButtonPin_Big)==LOW)<br />
{<br />
Motor_GO(Distance);<br />
delay(rpm*1000)<br />
}<br />
}</p>
<p>void Motor_GO(float Distance)<br />
{<br />
analogWrite(Pwm ,Distance);<br />
digitalWrite(Dir,HIGH); // Direction = HIGH값일 때 정회전</p>
<p>}<br />
</div>
<strong>• Flow Chart</strong></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-24.jpg" rel="lightbox[27147]"><img class="alignnone size-large wp-image-27170" alt="아끼슈 24" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-24-609x620.jpg" width="609" height="620" /></a><br />
<strong>• 완성된 영상</strong></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-25.jpg" rel="lightbox[27147]"><img class="alignnone size-full wp-image-27171" alt="아끼슈 25" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/아끼슈-25.jpg" width="620" height="296" /></a></p>
<p><a href="http://youtu.be/ppVs7RK_VgQ"><span style="text-decoration: underline">http://youtu.be/ppVs7RK_VgQ</span></a></p>
<p><strong>• 참고문헌</strong></p>
<p>http://Arduino.cc</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ntrexgo.com/archives/27147/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[26호]Moonwalker MW DCM02 V2 출시</title>
		<link>http://www.ntrexgo.com/archives/26405</link>
		<comments>http://www.ntrexgo.com/archives/26405#comments</comments>
		<pubDate>Mon, 01 Sep 2014 07:31:55 +0000</pubDate>
		<dc:creator>디바이스마트 매거진</dc:creator>
				<category><![CDATA[디바이스마트 매거진]]></category>
		<category><![CDATA[프로덕트 뉴스]]></category>
		<category><![CDATA[26호]]></category>
		<category><![CDATA[MoonWalker]]></category>
		<category><![CDATA[NEWS]]></category>
		<category><![CDATA[ntrex]]></category>
		<category><![CDATA[product]]></category>
		<category><![CDATA[디바이스마트]]></category>
		<category><![CDATA[매거진]]></category>

		<guid isPermaLink="false">http://www.ntrexgo.com/?p=26405</guid>
		<description><![CDATA[디바이스마트 매거진 26호 &#124; (주)엔티렉스 부설연구소에서 DC모터드라이버 ‘MoonWalker’시리즈 중 가장 인기 모델인 DCM02의 새로운 버전 ‘MoonWalker MW DCM02 v2’를 출시했다.]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.ntrexgo.com/wp-content/uploads/2014/09/NTREXLAB.jpg" rel="lightbox[26405]"><img class="alignnone size-medium wp-image-26406" alt="NTREXLAB" src="http://www.ntrexgo.com/wp-content/uploads/2014/09/NTREXLAB-300x243.jpg" width="300" height="243" /></a></p>
<p><span style="font-size: x-large"><strong>Moonwalker MW DCM02 V2 출시 </strong></span></p>
<p>(주)엔티렉스 부설연구소에서 DC모터드라이버 ‘MoonWalker’시리즈 중 가장 인기 모델인 DCM02의 새로운 버전 ‘MoonWalker MW DCM02 v2’를 출시했다. MoonWalker MW DCM02 v2의 기본스펙은 8~30V의 입력전압, 채널당 최대전류 10A. 2채널 20A이며, 전압/속도/위치 제어, Serial(RS232/CAN)통신이 가능하다. 또한 Motor Control UI 프로그램이 지원되고, 스크립트(Script) 언어 지원, 과전압, 과전류 등에 대한 보호 기능이 탑재됐다. 기본적인 스펙은 이전 모델과 동일하게 제작되었으나, I/O 사용 범위를 넓히면서 유저들의 Application을 확대할 수 있게 했다.</p>
<p>이전 모델 MoonWalker MW DCM02에서는 입출력 단자가 2 port 였지만 MW DCM02 v2는 사용자들이 많이 사용하는 Digital Input과 Digital Output이 2~3배로 확장됐다.<br />
MoonWalker MW DCM02 v2의 자세한 사양은 디바이스마트를 통해 확인할 수 있다.</p>
<p><strong>I/O의 상세스펙</strong><br />
· Optical Encoder Inputs 2 incremental encoders<br />
· Digital Outputs 4 outputs (max 50V/1A)<br />
· Digital Inputs 7 inputs<br />
· Analog Inputs 2 inputs<br />
· Pulse Inputs 4 inputs</p>
<p>TEL. 070-7019-8887<br />
www.devicemart.co.kr</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ntrexgo.com/archives/26405/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[26호] ICT 융합 공모전 &#8211; 레이저모듈과 포토센서를 이용한 레이저하프 악기 제작</title>
		<link>http://www.ntrexgo.com/archives/27133</link>
		<comments>http://www.ntrexgo.com/archives/27133#comments</comments>
		<pubDate>Mon, 01 Sep 2014 07:12:00 +0000</pubDate>
		<dc:creator>디바이스마트 매거진</dc:creator>
				<category><![CDATA[디바이스마트 매거진]]></category>
		<category><![CDATA[특집]]></category>
		<category><![CDATA[26호]]></category>
		<category><![CDATA[Feature]]></category>
		<category><![CDATA[ict]]></category>
		<category><![CDATA[공모전]]></category>
		<category><![CDATA[디바이스마트]]></category>
		<category><![CDATA[매거진]]></category>
		<category><![CDATA[융합]]></category>
		<category><![CDATA[프로젝트]]></category>

		<guid isPermaLink="false">http://www.ntrexgo.com/?p=27133</guid>
		<description><![CDATA[디바이스마트 매거진 26호 &#124; 마이크로프로세서 보드 및 그 밖의 전자부품을 이용하여 기존의 현을 이용한 하프와는 별개로 레이저모듈과 포토센서를 이용하여 실제 현이 없는 하프를 제작하였다. 일상에서 쉽게 접해보지 못하는 악기인 하프를 제작함으로써 보다 다양한 악기를 체험하고자 하였으며 간단한 회로구성만으로 하프의 동작을 구현했다는 점을 볼 때 간단한 전자회로 예제 교육용으로도 사용이 가능할 것으로 본다. ]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-01.jpg" rel="lightbox[27133]"><img class="alignnone size-full wp-image-27134" alt="레이저하프 01" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-01.jpg" width="620" height="200" /></a></p>
<p><span style="font-family: 'arial black', 'avant garde';font-size: large"><strong>레이저모듈과 포토센서를 이용한 레이저하프 악기 제작</strong></span></p>
<p style="text-align: right">글 | 동양미래대학교 박창용, 권용선, 김준범, 이동건, 임지원, 홍동의</p>
<p><span style="color: #0000ff"><strong>1. 작품개요</strong></span><br />
마이크로프로세서 보드 및 그 밖의 전자부품을 이용하여 기존의 현을 이용한 하프와는 별개로 레이저모듈과 포토센서를 이용하여 실제 현이 없는 하프를 제작하였다. 일상에서 쉽게 접해보지 못하는 악기인 하프를 제작함으로써 보다 다양한 악기를 체험하고자 하였으며 간단한 회로구성만으로 하프의 동작을 구현했다는 점을 볼 때 간단한 전자회로 예제 교육용으로도 사용이 가능할 것으로 본다.</p>
<p><span style="color: #0000ff"><strong>2. 작품설명</strong></span><br />
동아리 내에서 아두이노 프로그래밍 학습차 MIDI 실드 실습을 하였는데 피아노와 같은 흔히 접해볼 수 있는 악기 말고 독특한 악기를 제작해보는 건 어떨까 고민하던 중, 현을 전자회로로 조작할 수 있는 것을 구상해 보았고, 일상에서 접하기 힘든 하프를 제작해 보기로 결정하였다.<br />
본 레이저하프에는 아두이노 보드를 이용하여 프로그래밍하였다. 하프가 현이 많은 점을 미루어보아 센서를 정밀하게 동작시키기 위해 레이저모듈을 이용하였고, 그에 따른 센서는 포토센서로 하였다. 아두이노 보드에 MIDI실드를 이용하여 하프 음계 외에 다른 종류의 음계 표현이 가능하다.</p>
<p><span style="color: #800080"><strong>2.1 주요동작 및 특징</strong></span><br />
하프의 현을 레이저로 표현했다는 것이 가장 큰 특장점이다. 적외선 발광 다이오드같은 타 발광 다이오드는 빛의 퍼짐 현상이 있어 정확한 조작을 필요로 하는 장비에는 적합하지 않다. 따라서 빛의 퍼짐현상이 적은 레이저 모듈을 이용하여 작품을 제작하였다. 이는 사용자가 악기를 다루는데 보다 정확하게 동작시킬 수 있게 도움을 준다.</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-02.jpg" rel="lightbox[27133]"><img class="alignnone size-full wp-image-27135" alt="레이저하프 02" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-02.jpg" width="620" height="371" /></a></p>
<p><span style="color: #800080"><strong>2.2 전체 시스템 구성</strong></span><br />
<span style="color: #cc99ff"><strong>2.2.1 구성 재료</strong></span><br />
아두이노 Mega 2560, MIDI Shield(VS1053b), 파워서플라이(UP15S05L, 입력: 100-240V, 출력: DC5V 3A), 외부스피커, 5V 레이저 모듈(40mA, 규격 17.3mm * 6mm), 포토트랜지스터 수광부(ST-1KLA), 시멘트저항 4.7Ω 10W, 탄소피막저항 4.7kΩ, 택트스위치</p>
<p><span style="color: #cc99ff"><strong>2.2.2 주요 부품 사진</strong></span></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-03.jpg" rel="lightbox[27133]"><img class="alignnone size-full wp-image-27136" alt="레이저하프 03" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-03.jpg" width="620" height="438" /></a></p>
<p><span style="color: #cc99ff"><strong>2.2.3 알고리즘도</strong></span></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-04.jpg" rel="lightbox[27133]"><img class="alignnone size-full wp-image-27137" alt="레이저하프 04" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-04.jpg" width="620" height="410" /></a></p>
<p><span style="color: #800080"><strong>2.3 개발환경</strong></span><br />
Arduino의 Processing 언어 및 Arduino IDE Tool을 사용하였다. Processing 언어는 초보자도 쉽게 이해할 수 있는 장점이 있다. 다음은 레이저하프 프로그래밍을 하기위해 참고한 아두이노의 기본 예제이다.</p>
<div class="symple-box yellow none" style="text-align:left; width:100%;"> 
<p>void setup() {<br />
Serial,begin(9600);<br />
}</p>
<p>void loop() {<br />
int sensorValue = analogRead(AO);<br />
float voltage = sensorValue;<br />
Serial.println(Voltage);<br />
delay(200);<br />
}</p>
</div>
<p><span style="color: #0000ff"><strong>3. 단계별 제작과정</strong></span><br />
<span style="color: #800080"><strong>3.1 스피커를 제어하는 기본 레이저모듈 회로</strong></span></p>
<p><span style="color: #800080"><strong><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-05.jpg" rel="lightbox[27133]"><img class="alignnone size-full wp-image-27138" alt="레이저하프 05" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-05.jpg" width="620" height="381" /></a></strong></span><br />
PHOTO TR의 Collector 단자에 5V, Emitter 단자에 GND를 연결한 뒤 Base에 빛을 가해주면 Collector와 Emitter 사이에 전류가 흐르게 된다. 이를 이용하여 Emitter와 GND 사이에 높은 수치의 저항(여기선 4.7kΩ을 사용하였다.)을 연결하면 트랜지스터에 전류가 흐를 시 이 저항에 거의 모든 전압이 걸리기 때문에 저항에 DIGITAL IN 핀을 연결하여 사용하였다.<br />
레이저 값을 받으면 DIGITAL IN 단자에 5V, 레이저 값을 받지 못하면(손으로 레이저를 가리면) DIGITAL IN 단자에 0V가 입력되어 이를 디지털 제어용으로 활용할 수 있었다.</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-06.jpg" rel="lightbox[27133]"><img class="alignnone size-full wp-image-27139" alt="레이저하프 06" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-06.jpg" width="620" height="331" /></a></p>
<p>5V 3A의 전원이 병렬 레이저 모듈과 센서 회로에 나뉘어 들어가기 때문에 실제 전류는 약 절반인 1.5A가 센서 회로에 공급하기로 설계하였으나 트랜지스터의 라이트 정격 전류가 최대 16mA인 것을 감안하여 실제로는 아두이노 내의 5V 및 GND 단자를 이용하여 센서의 전원을 공급하였다.</p>
<p><span style="color: #800080"><strong>3.2 하드웨어 제작</strong></span></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-07.jpg" rel="lightbox[27133]"><img class="alignnone size-full wp-image-27140" alt="레이저하프 07" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-07.jpg" width="620" height="299" /></a></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-08.jpg" rel="lightbox[27133]"><img class="alignnone size-full wp-image-27141" alt="레이저하프 08" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-08.jpg" width="620" height="299" /></a><br />
테스트용으로 제작하였기 때문에 나무 등 튼튼한 재료로 제작하지는 않았다. 저렴하고 간단하게 테스트할 수 있도록 우드락을 겹겹이 붙여서 하프의 기본 틀을 제작하였다. 우드락의 재질이 튼튼하지만 나무처럼 단단하지 않아서 조금이라도 휘는 경우 레이저 길이 틀어져서 오류를 일으키는 점이 발생했던 것을 보아 다음 제작시에는 나무 등 우드락보다 더욱 튼튼한 재료를 사용할 생각이다.</p>
<p><span style="color: #800080"><strong>3.3 아두이노 회로 연결</strong></span></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-09.jpg" rel="lightbox[27133]"><img class="alignnone size-full wp-image-27142" alt="레이저하프 09" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/레이저하프-09.jpg" width="620" height="298" /></a><br />
본 레이저하프에는 34개의 현을 구현하기 위한 34개의 센서 및 34개의 레이저 말고도 3개의 스위치를 추가하였다. 첫 번째 스위치는 MIDI 실드의 악기 종류 초기화 버튼, 두 번째 스위치는 악기 종류 위로 변경 버튼, 세 번째 스위치는 악기 종류 아래로 변경 버튼이다. MIDI Shield에서는 128가지의 악기를 사용할 수 있어 이를 이용하고자 하였다. 따라서 본 레이저하프에서 이 스위치를 이용하여 하프음 말고도 피아노 음 같은 여러 가지 음을 표현할 수 있다.</p>
<p><span style="color: #800080"><strong>3.4 문제점</strong></span><br />
<span style="color: #cc99ff"><strong> 3.4.1 프로토타입의 사이즈 문제</strong></span><br />
이번에 제작한 테스트용 레이저하프는 사이즈가 작기 때문에 아두이노 기판을 포함한 브레드보드 및 기타 회로를 내부로 넣지 못하여 외관상 보기 좋지 않았다. 따라서 다음에 제작할 레이저하프에는 이를 고려할 생각이다.</p>
<p><span style="color: #cc99ff"><strong>3.4.2 하프 음계의 반음 표현</strong></span><br />
본 레이저하프는 반음을 프로그래밍하지 않고 기본음만 34가지 음을 프로그래밍하였다. 하지만 실제 하프에서는 페달을 이용하여 반음을 표현할 수 있는데, 이를 다른 스위치를 이용하여 반음을 소리낼 수 있는 프로그래밍을 제작 중에 있다. 이의 프로그램이 추가되면 실제 하프와 거의 흡사한 구동을 할 수 있을 것이라 생각한다.</p>
<p><span style="color: #cc99ff"><strong>3.4.2 하프의 음의 크기</strong></span><br />
본 레이저하프는 음의 크기가 제어되지 않는다. 따라서 이중 현을 프로그래밍하여 속도를 계산하여 음의 크기를 조절하는 프로그램도 모색중에 있다.</p>
<p><span style="color: #0000ff"><strong>4. 기타</strong></span><br />
다음은 본 레이저하프에 프로그래밍된 소스코드이다.</p>
<div class="symple-box yellow none" style="text-align:left; width:100%;"> 
<p>#include &lt;SoftwareSerial.h&gt;<br />
#define senU 5 // upper instruments select sensor<br />
#define senD 6 // down instruments select sensor<br />
#define senA 7 // initialize sensor<br />
// &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>#define sen1 8 // 34<br />
#define sen2 9 // 33<br />
&#8230;&#8230;(생략)<br />
#define sen34 53 // 1</p>
<p>SoftwareSerial mySerial(2, 3); // (RX, TX)<br />
#define defaultPatch 46 //악기 초기화 버튼 설정 악기번호</p>
<p>byte note = 0;<br />
byte resetMIDI = 4;<br />
byte byteData;</p>
<p>int patch = 0; //악기 대응, 연주될 악기 종류 (0~127: 기본 128 가지 선택가능)<br />
int bn1 = 60; // “1do”<br />
int bn2 = 62; // “ray”<br />
&#8230;&#8230;(생략)<br />
int bn34 = 117;</p>
<p>int value1;<br />
int value2;<br />
&#8230;&#8230;(생략)<br />
int value34;<br />
int valueU;<br />
int valueD;<br />
int valueA;</p>
<p>boolean bs1 = false;<br />
boolean bs2 = false;<br />
&#8230;&#8230;(생략)<br />
boolean bs34 = false;<br />
boolean bsU = false;<br />
boolean bsD = false;<br />
boolean bsA = false;</p>
<p>void setup() {<br />
pinMode(sen1, INPUT);<br />
digitalWrite(sen1, HIGH);<br />
pinMode(sen2, INPUT);<br />
digitalWrite(sen2, HIGH);<br />
&#8230;&#8230;(생략)<br />
pinMode(sen34, INPUT);<br />
digitalWrite(sen34, HIGH);<br />
pinMode(senU, INPUT);<br />
digitalWrite(senU, HIGH);<br />
pinMode(senD, INPUT);<br />
digitalWrite(senD, HIGH);<br />
pinMode(senA, INPUT);<br />
digitalWrite(senA, HIGH);</p>
<p>Serial.begin(31250); // bit per sec<br />
mySerial.begin(31250);</p>
<p>//Reset the VS1053<br />
pinMode(resetMIDI, OUTPUT);<br />
digitalWrite(resetMIDI, LOW);<br />
delay(100);<br />
digitalWrite(resetMIDI, HIGH);<br />
delay(100);<br />
patch = defaultPatch;<br />
talkMIDI(0xb0, 0, 0);<br />
talkMIDI(0xb0,20, 0);<br />
talkMIDI(0xc0, patch, 0);<br />
}</p>
<p>void loop() {<br />
value1 = digitalRead(sen1);<br />
value2 = digitalRead(sen2);<br />
&#8230;&#8230;(생략)<br />
value34 = digitalRead(sen34);<br />
valueU = digitalRead(senU);<br />
valueD = digitalRead(senD);<br />
valueA = digitalRead(senA);<br />
if( !bs1 &amp;&amp; !value1 ) {<br />
noteOn(0, bn1, 100);<br />
bs1 = true;<br />
}<br />
else if( bs1 &amp;&amp; value1 ) {<br />
noteOff(0, bn1, 0);<br />
bs1 = false;<br />
}<br />
if( !bs2 &amp;&amp; !value2 ) {<br />
noteOn(0, bn2, 100);<br />
bs2 = true;<br />
}<br />
else if( bs2 &amp;&amp; value2 ) {<br />
noteOff(0, bn2, 0);<br />
bs2 = false;<br />
&#8230;&#8230;(생략)<br />
if( !bs34 &amp;&amp; !value34 ) {<br />
noteOn(0, bn34, 100);<br />
bs34 = true;<br />
}<br />
else if( bs34 &amp;&amp; value34 ) {<br />
noteOff(0, bn34, 0);<br />
bs34 = false;<br />
}<br />
if( !bsD &amp;&amp; !valueD ) {<br />
patch&#8211;;<br />
if( patch &lt; 0 ) patch = 127;<br />
talkMIDI(0xc0, patch, 0);<br />
bsD = true;<br />
}<br />
else if( bsD &amp;&amp; valueD ) {<br />
bsD = false;<br />
}<br />
if( !bsU &amp;&amp; !valueU ) {<br />
patch++;<br />
if( patch &gt; 127 ) patch = 0;<br />
talkMIDI(0xc0, patch, 0);<br />
bsU = true;<br />
}<br />
else if( bsU &amp;&amp; valueU ) {<br />
bsU = false;<br />
}<br />
if( !bsA &amp;&amp; !valueA ) {<br />
patch = defaultPatch;<br />
talkMIDI(0xb0, 0, 0);<br />
talkMIDI(0xb0,20, 0);<br />
talkMIDI(0xc0, patch, 0);<br />
bsA = true;<br />
}<br />
else if( bsA &amp;&amp; valueA ) {<br />
bsA = false;<br />
}<br />
if(Serial.available() &gt; 0)<br />
{<br />
byteData = Serial.read();<br />
Serial.write(byteData);<br />
}</p>
<p>}</p>
<p>void noteOn(byte channel, byte note, byte attack_velocity) {<br />
talkMIDI( (0&#215;90 | channel), note, attack_velocity);<br />
}</p>
<p>void noteOff(byte channel, byte note, byte release_velocity) {<br />
talkMIDI( (0&#215;80 | channel), note, release_velocity);<br />
}</p>
<p>void talkMIDI(byte cmd, byte data1, byte data2) {<br />
mySerial.write(cmd );<br />
mySerial.write(data1 );</p>
<p>if( (cmd &amp; 0xF0) &lt;= 0xB0)<br />
mySerial.write(data2 );</p>
<p>}<br />
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.ntrexgo.com/archives/27133/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[26호]KB4500 출시</title>
		<link>http://www.ntrexgo.com/archives/26399</link>
		<comments>http://www.ntrexgo.com/archives/26399#comments</comments>
		<pubDate>Mon, 01 Sep 2014 07:10:47 +0000</pubDate>
		<dc:creator>디바이스마트 매거진</dc:creator>
				<category><![CDATA[디바이스마트 매거진]]></category>
		<category><![CDATA[프로덕트 뉴스]]></category>
		<category><![CDATA[26호]]></category>
		<category><![CDATA[NEWS]]></category>
		<category><![CDATA[product]]></category>
		<category><![CDATA[디바이스마트]]></category>
		<category><![CDATA[매거진]]></category>
		<category><![CDATA[케이벨]]></category>

		<guid isPermaLink="false">http://www.ntrexgo.com/?p=26399</guid>
		<description><![CDATA[디바이스마트 매거진 &#124; 앰프 모듈과 AVR모듈 전문 업체인 (주)케이벨에서 고감고 마이크 앰프 모듈(KB4500)을 출시했다. KB4500은 초소형으로 기존 PCB 모듈 타입에서 알루미늄 케이스를 적용하여 사용시 발생할 수 있는 오차 발생을 최소화하였고 편리성을 극대화했다.]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.ntrexgo.com/wp-content/uploads/2014/09/케이벨-01.jpg" rel="lightbox[26399]"><img class="alignnone size-medium wp-image-26400" alt="케이벨 01" src="http://www.ntrexgo.com/wp-content/uploads/2014/09/케이벨-01-278x300.jpg" width="278" height="300" /></a></p>
<p><span style="font-size: x-large"><strong>KB4500 출시</strong></span></p>
<p>앰프 모듈과 AVR모듈 전문 업체인 (주)케이벨에서 고감고 마이크 앰프 모듈(KB4500)을 출시했다. KB4500은 초소형으로 기존 PCB 모듈 타입에서 알루미늄 케이스를 적용하여 사용시 발생할 수 있는 오차 발생을 최소화하였고 편리성을 극대화했다.<br />
광범위 DC 전압(DC 2.7V ~ DC 13V) 사용이 가능하도록 설계 되었으며, 사용자의 응용 적용을 쉽게하기 위하여 사용 주파수 대역을 두 종류로 구분하여 출시한다.<br />
이번에 출시되는 KB4500은 반 영구적 사용이 가능하게 설계되었고 특히 주변 환경 변화에 따른 특성 변화가 적어 실험실의 Reference 마이크로 적용이 가능하다. 자세한 사항은 디바이스마트 홈페이지에서 확인 가능하다</p>
<p><strong>제품 특징</strong><br />
· 사용 전원 : DC 2.7V ~ DC 13V<br />
· Frequency Response Bandwidth ( &#8211; 6.0 dB ) :<br />
A 형 : 20Hz ~ 20KHz<br />
B 형 : 200Hz ~ 4000Hz<br />
· 외곽 Size : Dia 10mm , Length 23mm<br />
· 증폭 Gain : 60 dB (1000배)<br />
· 최대 출력 전압 (THD 5%, DC 13 V) : P-P 10V</p>
<p>TEL. 02-6443-4703<br />
kbell@k-bell.co.kr</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ntrexgo.com/archives/26399/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[26호] ICT 융합 공모전 -스마트 선풍기</title>
		<link>http://www.ntrexgo.com/archives/27111</link>
		<comments>http://www.ntrexgo.com/archives/27111#comments</comments>
		<pubDate>Mon, 01 Sep 2014 06:47:17 +0000</pubDate>
		<dc:creator>디바이스마트 매거진</dc:creator>
				<category><![CDATA[디바이스마트 매거진]]></category>
		<category><![CDATA[특집]]></category>
		<category><![CDATA[26호]]></category>
		<category><![CDATA[Feature]]></category>
		<category><![CDATA[ict]]></category>
		<category><![CDATA[공모전]]></category>
		<category><![CDATA[디바이스마트]]></category>
		<category><![CDATA[매거진]]></category>
		<category><![CDATA[융합]]></category>
		<category><![CDATA[프로젝트]]></category>

		<guid isPermaLink="false">http://www.ntrexgo.com/?p=27111</guid>
		<description><![CDATA[디바이스마트 매거진 26호 &#124; ‘스마트’를 이름 붙인 이유는 기존의 선풍기보다 똑똑하기 때문이다. 기존의 선풍기는 사용자가 직접 전원을 ON/OFF 시키므로 켜놓은채 방치시키기도 한다. 그리고 현재 온도가 몇 도인지 알 수 없어서 사람이 덥다고 느낄 때마다 ON/OFF 시켜야한다. 이러한 한계점을 극복하기 위해 자동으로 ON/OFF되고, 현재 온도를 알 수 있는 선풍기를 제작하여 ‘스마트 선풍기’라고 이름을 지었다.]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-16.jpg" rel="lightbox[27111]"><img class="alignnone size-full wp-image-27127" alt="선풍기 16" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-16.jpg" width="620" height="190" /></a></p>
<p style="text-align: right">글 | 경상대학교 전자공학과 김지완, 안민수, 김형진, 강수빈</p>
<p>‘스마트’를 이름 붙인 이유는 기존의 선풍기보다 똑똑하기 때문이다. 기존의 선풍기는 사용자가 직접 전원을 ON/OFF 시키므로 켜놓은 채 방치시키기도 한다. 그리고 현재 온도가 몇 도인지 알 수 없어서 사람이 덥다고 느낄 때마다 ON/OFF 시켜야한다. 이러한 한계점을 극복하기 위해 자동으로 ON/OFF되고, 현재 온도를 알 수 있는 선풍기를 제작하여 ‘스마트 선풍기’라고 이름을 지었다.</p>
<p><span style="color: #0000ff"><strong>1. 작품 개요</strong></span></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-01.jpg" rel="lightbox[27111]"><img class="alignnone  wp-image-27112" alt="선풍기 01" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-01-406x620.jpg" width="159" height="243" /></a></p>
<p>본 작품은 센서에 의해 자동으로 제어되는 선풍기이다. 본 작품은 일반모드, 적외선 센서를 이용한 인체 감지 모드, 온도 센서를 이용한 온도 감지 모드로 모두 3가지 모드에서 작동할 수 있다. 일반적인 선풍기의 한계를 뛰어넘고 ICT와 융합하여 효율성을 증대시킨 작품이다. 본 작품은 에너지를 절약함으로써 여름철 전력난을 완화할 수 있고, PC방이나목욕탕, 관공서와 같은 공공시설에서 활용가치가 높다는 것이 장점이다.</p>
<p><span style="color: #0000ff"><strong>2. 작품 설명</strong></span><br />
<span style="color: #800080"><strong>2.1. 주요 동작 및 특징</strong></span><br />
<span style="color: #008000">2.1.1. MODE 1</span></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-02.jpg" rel="lightbox[27111]"><img class="alignnone size-full wp-image-27113" alt="선풍기 02" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-02.jpg" width="292" height="170" /></a></p>
<p>컨트롤 박스의 첫 번째 스위치이다. 이 스위치를 올리면 일반적인 선풍기와 같이 동작한다. 온도와 상관없이 사용하고 싶을 때, 사람이 없어도 동작하게 할 때 사용한다.</p>
<p><span style="color: #008000">2.1.2. MODE 2</span></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-03.jpg" rel="lightbox[27111]"><img class="alignnone size-full wp-image-27114" alt="선풍기 03" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-03.jpg" width="295" height="177" /></a></p>
<p>컨트롤 박스의 두 번째 스위치이다. 이 스위치를 올리면 적외선 센서로 제어되는 인체감지 모드로 동작한다.</p>
<p><img class="alignnone size-large wp-image-27115" alt="선풍기 04" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-04-620x436.jpg" width="620" height="436" /></p>
<p>사람이 앞에 있으면 적외선 센서인 LHI-878이 감지하여 선풍기를 동작시킨다. 센서가 동작하는지는 센서 옆에 있는 센서 동작 램프를 통해 알 수 있다. 센서의 동작 효율을 높이기 위해서 적외선 센서 전용 캡을 씌웠다. 적외선 센서의 특성상 연속적으로 감지하는 것이 아니라 딜레이가 없으면 동작이 연속적으로 되지 못한다. 그 문제를 해결하기 위하여 약 3초 정도의 시간 지연을 줌으로써 동작 오류를 완벽하게 제거하였다.</p>
<div class="symple-box yellow none" style="text-align:left; width:100%;"> 
<p>※ 시간 지연 루틴<br />
void delay(unsigned int i)<br />
{<br />
while(i&#8211;);<br />
}</p>
</div>
<p><span style="color: #008000">2.1.3. MODE 3</span></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-05.jpg" rel="lightbox[27111]"><img class="alignnone size-full wp-image-27116" alt="선풍기 05" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-05.jpg" width="296" height="174" /></a></p>
<p>컨트롤 박스의 세 번째 스위치이다. 이 스위치를 올리면 온도센서로 제어되는 온도 감지 모드로 동작한다.</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-06.jpg" rel="lightbox[27111]"><img class="alignnone size-large wp-image-27117" alt="선풍기 06" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-06-620x432.jpg" width="620" height="432" /></a></p>
<p>미리 설정된 2개의 기준온도(상한 임계 온도, 하한 임계 온도)에 따라 붉은색 LED와 노란색 LED가 켜진다. 본 작품에서는 상한 임계 온도를 26도, 하한 임계 온도를 22도로 설정했다. 만약 현재 온도가 26도 이상이 되면 위의 사진과 같이 붉은색 LED가 켜지면서 선풍기가 켜진다. 현재 온도가 상한 임계 온도 이하로 떨어지게 되면 곧바로 붉은색 LED와 선풍기가 꺼지게 된다. 그리고 하한 임계 온도 이하로 떨어지게 되면 노란색 LED가 켜진다. 하한 임계 온도는 선풍기의 동작에는 관여하지 않지만 온도가 상당히 떨어졌을 때를 표시 할 수 있으며 나아가 히터를 작동시키는데 활용 할 수 있다.</p>
<div class="symple-box yellow none" style="text-align:left; width:100%;"> 
<p>※ 상한 임계 온도, 하한 임계 온도 설정<br />
set_TH(0&#215;00,0&#215;34); // TH값 전송(+26℃)<br />
set_TL(0&#215;00,0x2c); // TL값 전송(+22℃)</p>
</div>
<p><span style="color: #008000">2.1.4. 작품의 특징</span><br />
디자인적인 측면에서 많은 노력이 들어갔다. 선풍기 부분의 헬로키티의 눈에 5색 LED를 부착했고 본체 부분은 작은 박스 안에 기판들을 집적하여 보기 좋게 만들었다.</p>
<p><strong><span style="color: #800080">2.2 전체 시스템 구성</span></strong></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-07.jpg" rel="lightbox[27111]"><img class="alignnone size-large wp-image-27118" alt="선풍기 07" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-07-620x280.jpg" width="620" height="280" /></a><br />
MCU는 89S52를 사용했고 적외선 센서와 온도 센서로부터 정보를 받아서 선풍기를 제어하는 방식이다. 세 가지 MODE의 제어를 위해 스위치를 3개 만들었다. 7-세그먼트로 현재 온도를 확인할 수 있다.</p>
<p><strong>본 작품의 상세 설명</strong></p>
<p><strong><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-08.jpg" rel="lightbox[27111]"><img class="alignnone size-large wp-image-27119" alt="선풍기 08" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-08-620x429.jpg" width="620" height="429" /></a></strong></p>
<p><strong></strong><br />
<strong> 본 작품 내부 모습</strong></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-09.jpg" rel="lightbox[27111]"><img class="alignnone size-full wp-image-27120" alt="선풍기 09" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-09.jpg" width="620" height="370" /></a><br />
<strong> </strong></p>
<p><strong>본 작품 옆면의 스위치</strong></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-10.jpg" rel="lightbox[27111]"><img class="alignnone size-full wp-image-27121" alt="선풍기 10" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-10.jpg" width="317" height="168" /></a></p>
<p><span style="color: #800080"><strong>2.3 개발 환경</strong></span><br />
개발언어 : C언어<br />
Tool : Keil uVision4, AVR Studio 4<br />
사용시스템 : 89S52</p>
<p><span style="color: #0000ff"><strong>3. 단계별 제작 과정</strong></span><br />
<strong>● 스케줄</strong></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-11.jpg" rel="lightbox[27111]"><img class="alignnone size-large wp-image-27122" alt="선풍기 11" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-11-620x248.jpg" width="620" height="248" /></a><br />
<strong> </strong></p>
<p><strong>● 아이디어 회의</strong></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-12.jpg" rel="lightbox[27111]"><img class="alignnone size-full wp-image-27123" alt="선풍기 12" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-12.jpg" width="620" height="406" /></a><br />
실용적이면서 동시에 요즘 트렌드인 ICT에 적합한 작품이 없을까 하다가 물의 온도를 자동으로 바꿔주는 수도꼭지와 인체를 감지는 스마트 선풍기 2개를 두고 고민했다. 하지만 아이디어 회의 결과, 복지적인 측면에서 장애인들에게 실용성이 높고 이슈가 되는 전력난 해소에도 긍정적일 것 같아서 스마트 선풍기로 결정했다.</p>
<p><strong>● 내용 구체화</strong><br />
세 가지 기능, 적외선 센서로 사람의 유무를 판단해 작동되는 기능과 온도를 표시해주고 정해놓은 온도에 따라서 선풍기가 작동하는 기능과 일반적인 선풍기처럼 작동하는 기능이 있다. 그리고 선풍기에 5색 led를 설치해 작동 여부를 쉽게 구분하고 미적인 측면과 재미를 강조하기로 했다. 전체 동작을 순서도로 작성하여 실제 제작과 프로그래밍을 할 때 알기 쉽도록 했다.</p>
<p><strong>● 회로 설계</strong></p>
<p><strong><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-13.jpg" rel="lightbox[27111]"><img class="alignnone size-full wp-image-27124" alt="선풍기 13" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-13.jpg" width="620" height="353" /></a></strong><br />
온도측정을 위해서 LM35DZ 온도 센서를 사용하려고 했지만, LM35DZ에서 받은 아날로그 신호를 다시 디지털로 바꾸기 위해서는 다른 칩이 많이 필요해 집적도가 떨어지는 문제가 발생해서 DS1620으로 대체했다. 적외선 센서는 많이 쓰이는 LHI-878을 사용했다.</p>
<p><strong>● 프로그래밍</strong><br />
선풍기가 작동하는 온도인 상한 임계 온도는 26℃로 하한 임계 온도는 22℃로 설정했다. 그리고 적외선 센서의 감지 시간 딜레이를 넣지 않아 동작이 불안정한 것을, 약 3초의 딜레이를 프로그래밍에 추가해서 동작을 자연스럽게 만들었다.</p>
<p><strong>● 회로 제작</strong></p>
<p><strong><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-14.jpg" rel="lightbox[27111]"><img class="alignnone size-full wp-image-27125" alt="선풍기 14" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-14.jpg" width="620" height="411" /></a></strong><br />
효율성을 높이기 위해서 2명씩 짝을 이뤄서 1조는 회로를 제작했고 2조는 케이스를 제작했다. 우리는 제작에 사용할 선풍기를 구입하기 전에 컴퓨터에 사용되는 쿨링팬을 연결하여 테스트를 했다. 작동이 잘 되는 것을 보고 선풍기를 구입했고 테스트를 했지만 실제 선풍기를 작동시키기 위한 전류는 훨씬 커야 했다. 그 문제를 해결하기 위해 트랜지스터로 전류를 증폭했다. 적외선 센서와 온도 센서로부터 입력을 받는 부분에 동작이 불안정 했는데 중간에 버퍼를 사용해서 문제를 해결했다.</p>
<p><strong>● 케이스 제작</strong><br />
하얀색 바탕의 상자를 제작해 스위치 3개와 온도센서, 적외선센서, 세그먼트가 나올 수 있는 구멍을 만들었다. 적외선 센서는 중앙에 배치해 인체감지에 용이하게 했고 바로 밑에 온도표시를 하는 세그먼트를 보이게 했다. 그리고 선풍기의 작동여부를 알기 쉽게 하기 위해서 인형 모형의 눈에 5색 led 2개를 장착했다.</p>
<p><span style="color: #0000ff"><strong>4. 부품리스트</strong></span></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-15.jpg" rel="lightbox[27111]"><img class="alignnone size-large wp-image-27126" alt="선풍기 15" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/선풍기-15-525x620.jpg" width="525" height="620" /></a></p>
<p>&nbsp;</p>
<p><span style="color: #0000ff"><strong>5. 참고 문헌</strong></span><br />
· 임석구, 디지털논리회로, 한빛미디어<br />
· Behzad Razavi, 아날로그 CMOS 직접회로 설계, 한빛미디어<br />
· Robert L,Boylestad,Louis Nashelsky, 전자회로, 홍릉과학출판사<br />
· 강경일, OP-Amp회로실험, MC Graw Hill<br />
· 임석구, C언어로 배우는 8051 마이크로프로세서, 한빛미디어<br />
· 디바이스마트, http://www.devicemart.co.kr/<br />
· 뉴티씨, http://www.newtc.co.kr/<br />
· 전자공작, http://cafe.naver.com/circuitsmanual<br />
· 당근이의 AVR 갖고 놀기, http://cafe.naver.com/carroty/</p>
<p><span style="color: #0000ff"><strong>6. 소스코드</strong></span></p>
<div class="symple-box yellow none" style="text-align:left; width:100%;"> 
<p>#include &lt;reg51.h&gt;</p>
<p>sbit DQ=P1^0; // DS1620의 직렬 데이터 입출력<br />
sbit CLK=P1^1; // DS1620의 CLK<br />
sbit RST=P1^2; // DS1620의 RST<br />
sbit minus=P1^3; // 영상 또는 영하 디스플레이<br />
sbit degree=P1^4; // 소수점 이하 디스플레이(0 또는 5)<br />
sbit inn1=P3^0; // 모드1 입력<br />
sbit inn2=P3^1; // 모드2 입력<br />
sbit inn3=P3^2; // 모드3 입력<br />
sbit outt=P3^4; // 출력<br />
void delay(unsigned int i) // 시간 지연<br />
{<br />
while(i&#8211;);<br />
}</p>
<p>void ds_write(unsigned char t_data) // 명령어 쓰기(89S52→DS1620)<br />
{<br />
unsigned char i;<br />
for (i=0; i&lt;8; i++) {<br />
CLK=0; // CLK=Low<br />
delay(10);<br />
DQ=t_data &amp; 0&#215;01; // 명령어 쓰기<br />
CLK=1; // CLK=High<br />
delay(10);<br />
t_data &gt;&gt;= 1; // 오른쪽으로 1비트 시프트<br />
}<br />
}</p>
<p>void ds_write_9bit(unsigned char t_sign, unsigned char t_data)<br />
{ // 9비트 데이터 쓰기(89S52→DS1620)<br />
unsigned char i;<br />
for (i=0; i&lt;8; i++) {<br />
CLK=0; // CLK=Low<br />
delay(10);<br />
DQ=t_data &amp; 0&#215;01; // 데이터 쓰기<br />
CLK=1; // CLK=High<br />
delay(10);<br />
t_data &gt;&gt;= 1; // 오른쪽으로 1비트 시프트<br />
}<br />
CLK=0; // CLK=Low<br />
delay(10);<br />
DQ=t_sign; // 부호비트<br />
CLK=1; // CLK=High<br />
delay(10);<br />
}</p>
<p>unsigned char ds_read(void) // 데이터 읽기(DS1620→89S52)<br />
{<br />
unsigned char i, g_data, temp;<br />
g_data=0&#215;00;<br />
temp=0&#215;01; // 0000 0001B</p>
<p>for (i=0; i&lt;8; i++) {<br />
CLK=0; // CLK=Low<br />
delay(10);<br />
if (DQ==1) g_data |= temp; // 데이터 읽기<br />
CLK=1; // CLK=High<br />
delay(10);<br />
temp=temp&lt;&lt;1;<br />
}<br />
return g_data;<br />
}</p>
<p>// 3 Alarm Thermostat Operation<br />
void set_TH(unsigned char th_sign, unsigned char th_data)<br />
{<br />
RST=1; // RST=High<br />
delay(10);<br />
ds_write(0&#215;01); // TH 레지스터에 데이터를 쓰는 명령<br />
ds_write_9bit(th_sign,th_data); // TH 데이터 전송(LSB 먼저)<br />
RST=0; // RST=Low<br />
delay(10); // 지연<br />
delay(2000);<br />
}</p>
<p>void set_TL(unsigned char tl_sign, unsigned char tl_data)<br />
{<br />
RST=1; // RST=High<br />
delay(10);<br />
ds_write(0&#215;02); // TL 레지스터에 데이터를 쓰는 명령<br />
ds_write_9bit(tl_sign,tl_data); // TL 데이터 전송(LSB 먼저)<br />
RST=0; // RST=Low<br />
delay(10); // 지연<br />
delay(2000);<br />
}</p>
<p>// 9비트 데이터(2 Bytes)로부터 온도계산<br />
// data2: 부호, data1: 온도<br />
void display_temp(unsigned char data2, unsigned char data1)<br />
{<br />
unsigned char temp, d100, d10, d1;</p>
<p>if (data2==0&#215;01) { // 0000 0001B→영하표시<br />
minus=0;<br />
data1=~data1;<br />
data1 += 1; // 2의 보수<br />
} else {<br />
minus=1; // 영상 디스플레이<br />
}</p>
<p>temp=data1 &amp; 0&#215;01; // 0.5℃ 인지 0.0℃ 인지 점검<br />
data1 &gt;&gt;= 1; // 실제온도=data1을 오른쪽으로 시프트<br />
d100=data1/100;<br />
d10=(data1%100)/10;<br />
d1=(data1%100)%10;</p>
<p>if (temp) degree=1; // 7-세그먼트에 소수점 이하 값인 5를 디스플레이<br />
else degree=0; // 7-세그먼트에 소수점 이하 값인 0을 디스플레이<br />
P2=(d10&lt;&lt;4) | d1; // 7-세그먼트에 온도 디스플레이<br />
}<br />
void main(void)<br />
{<br />
unsigned char get_data1, get_data2;</p>
<p>// 초기화 및 구성 레지스터 동작모드 설정<br />
// 1 Shot 동작모드(0&#215;03), 연속동작모드(0&#215;02)<br />
RST=0; // 초기화, RST=Low<br />
delay(10);<br />
CLK=1; // CLK=High<br />
delay(10);</p>
<p>RST=1; // RST=High<br />
delay(10);<br />
ds_write(0x0c); // 구성 레지스터에 데이터를 쓰는 명령<br />
ds_write(0&#215;02); // 구성 레지스터에 쓸 데이터 전송(연속 동작모드)<br />
RST=0; // RST=Low<br />
delay(10); // 지연<br />
delay(2000);</p>
<p>set_TH(0&#215;00,0&#215;34); // TH값 전송(+26℃)<br />
set_TL(0&#215;00,0x2c); // TL값 전송(+22℃)</p>
<p>RST=1; // RST=High<br />
delay(10);<br />
ds_write(0&#215;22); // 온도 변환 중지 명령<br />
RST=0; // RST=Low<br />
delay(10);</p>
<p>RST=1; // RST=High<br />
delay(10);<br />
ds_write(0xee); // 온도 변환 시작 명령<br />
RST=0; // RST=Low<br />
delay(10);<br />
delay(50000); // 변환을 위해 지연<br />
delay(50000);</p>
<p>do {<br />
RST=1; // RST=High<br />
delay(10);<br />
ds_write(0xaa); // 온도 데이터 읽기 명령<br />
get_data1=ds_read(); // 온도 데이터<br />
get_data2=ds_read(); // 부호<br />
RST=0; // RST=Low<br />
delay(10);<br />
display_temp(get_data2,get_data1);<br />
// 온도를 계산하고 7-세그먼트에 디스플레이</p>
<p>if((inn1==0) || (inn3==0)) {<br />
outt=0;<br />
}<br />
else if(inn2==0) {<br />
outt=0;<br />
delay(50000);<br />
delay(50000);<br />
delay(50000);<br />
delay(50000);<br />
delay(50000);<br />
delay(50000);<br />
delay(50000);<br />
delay(50000);<br />
delay(50000);<br />
delay(50000);<br />
delay(50000);<br />
delay(50000);<br />
delay(50000);<br />
delay(50000);<br />
delay(50000);<br />
delay(50000);<br />
delay(50000);<br />
delay(50000); // 약 3초 지연<br />
}<br />
else {<br />
outt=1;<br />
}<br />
} while(1);</p>
<p>}<br />
</div>
<p><span style="color: #0000ff"><strong>7. 회로도</strong></span></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/스마트선풍기-회로도jpg파일.jpg" rel="lightbox[27111]"><img class="alignnone size-large wp-image-27129" alt="스마트선풍기 회로도(jpg파일)" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/스마트선풍기-회로도jpg파일-620x438.jpg" width="620" height="438" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ntrexgo.com/archives/27111/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[26호] ICT 융합 공모전 &#8211; 베고파</title>
		<link>http://www.ntrexgo.com/archives/27068</link>
		<comments>http://www.ntrexgo.com/archives/27068#comments</comments>
		<pubDate>Mon, 01 Sep 2014 05:43:36 +0000</pubDate>
		<dc:creator>디바이스마트 매거진</dc:creator>
				<category><![CDATA[디바이스마트 매거진]]></category>
		<category><![CDATA[특집]]></category>
		<category><![CDATA[26호]]></category>
		<category><![CDATA[ict]]></category>
		<category><![CDATA[공모전]]></category>
		<category><![CDATA[디바이스마트]]></category>
		<category><![CDATA[매거진]]></category>
		<category><![CDATA[융합]]></category>
		<category><![CDATA[프로젝트]]></category>

		<guid isPermaLink="false">http://www.ntrexgo.com/?p=27068</guid>
		<description><![CDATA[디바이스마트 매거진 26호 &#124; 사용자로 하여금 ‘베고파’를 베고 싶은 베개라는 느낌을 주기 위해 이름을 ‘베고파’로 짓게 되었다. 기존 코골이 베개는 공기압력펌프를 통해 사용자의 기도를 확장하지만 ‘베고파’는 사용자의 고개를 다른 측면으로 돌려 기도를 확장한다는 점에서 기존의 제품과 차별성을 두고자 하였다. 또한, ‘베고파’는 기존 코골이 베개에서 코골이 인식뿐만 아니라 알람기능을 추가하였고 나아가 수면 패턴 체크기능까지 발전할 수 있는 가능성이 있다. 이러한 기능을 추가했음에도 기존에 상품으로 나와있는 다른 제품보다 원가를 절감함으로써 합리적인 가격으로 이 상품을 공급할 수 있다는 점에서 큰 장점이 된다.]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.ntrexgo.com/wp-content/uploads/2014/09/베고파-13.jpg" rel="lightbox[27068]"><img class="alignnone size-full wp-image-27107" alt="베고파 13" src="http://www.ntrexgo.com/wp-content/uploads/2014/09/베고파-13.jpg" width="620" height="215" /></a></p>
<p style="text-align: right"><strong>글 | 단국대학교 전자전기공학부 학술동아리 연구방 김재현, 김용진, 안새롬, 양희문</strong></p>
<p><span style="color: #800080"><strong>1. 작품의 목적 및 설명</strong></span><br />
사용자로 하여금 ‘베고파’를 베고 싶은 베개라는 느낌을 주기 위해 이름을 ‘베고파’로 짓게 되었다. 기존 코골이 베개는 공기압력펌프를 통해 사용자의 기도를 확장하지만 ‘베고파’는 사용자의 고개를 다른 측면으로 돌려 기도를 확장한다는 점에서 기존의 제품과 차별성을 두고자 하였다. 또한, ‘베고파’는 기존 코골이 베개에서 코골이 인식뿐만 아니라 알람기능을 추가하였고 나아가 수면 패턴 체크기능까지 발전할 수 있는 가능성이 있다. 이러한 기능을 추가했음에도 기존에 상품으로 나와있는 다른 제품보다 원가를 절감함으로써 합리적인 가격으로 이 상품을 공급할 수 있다는 점에서 큰 장점이 된다.</p>
<p><strong><span style="color: #3366ff">· 프로젝트 일반 사항</span></strong><br />
- 프로젝트 명 : 아두이노 기반의 코골이 베개 개발<br />
- 프로젝트 기간 : 14/03/15 ~ 14/03/31</p>
<p><strong><span style="color: #3366ff">· 프로젝트 주요 사항</span></strong><br />
- 기존 코골이베개와 ‘베고파’의 차별성<br />
- 코골이의 효과적인 예방법에 따른 ‘베고파’의 원리</p>
<p><span style="color: #800080"><strong>2. 코골이 베개의 제작배경</strong></span><br />
<span style="color: #3366ff"><strong>1) 코골이의 원인</strong></span></p>
<table style="width: 620px" border="1" cellspacing="0" cellpadding="2">
<tbody>
<tr>
<td><strong style="color: #3366ff;font-family: Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif;font-size: 13px;line-height: 19px"><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/ICT-베고파.jpg" rel="lightbox[27068]"><img class="size-full wp-image-27085 aligncenter" alt="ICT 베고파" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/ICT-베고파.jpg" width="460" height="186" /></a></strong></td>
</tr>
<tr>
<td>그림 1. 열린 기도와 닫힌 기도 출처 : (재미있는 인체 이야기, 2006.12.13., 가나출판사)</td>
</tr>
</tbody>
</table>
<p>21세기 현대 사회인들은 많은 스트레스를 받고 있다. 34개의 OECD국가 중 대한민국은 행복지수가 31위를 차지할 정도로 많은 스트레스를 받고 있다. 이러한 스트레스는 코골이의 원인 중 하나가 된다. 우리가 집에서 흔히 들을 수 있는 코골이는 우리가 누워서 잠을 잘 때, 물렁 입천장의 근육이 느슨해지면서 좁아진 기도를 지나면서 공기가 울림으로서 발생한다. 이때, 사람이 피곤하면 물렁 입천장의 근육이 더 느슨해지면서 기도가 더 좁게 되어서 코골이가 더 심해지게 된다.</p>
<table style="width: 620px" border="1" cellspacing="0" cellpadding="2">
<tbody>
<tr>
<td><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/ICT-베고파-1.jpg" rel="lightbox[27068]"><img class="size-full wp-image-27086 aligncenter" alt="ICT 베고파 (1)" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/ICT-베고파-1.jpg" width="544" height="287" /></a></td>
</tr>
<tr>
<td> 그림2. 폐쇄성 호흡장애 환자와 정상적인 사람의 호흡 (출처 : http://cafe.naver.com/reviewhome/38797)</td>
</tr>
</tbody>
</table>
<p>코골이가 발생하는 원인에는 근육의 이완이외에 여러 가지 이유가 있다. 그 중 하나는 비만이다. 비만인 환자의 경우 목 주위 부위에 지방이 축적되거나 혀, 편도 등의 조직이 비대해진 경우에도 목 안의 공간이 줄어들고 상기도가 좁아져 코골이 및 수면 무호흡이 나타날 수 있다. 다른 이유에는 턱이 비정상적으로 작거나 목이 짧고 굵은 사람에게서 이러한 증상이 나타나는 경우도 많다. 코골이가 심해지면 수면 무호흡증으로 이어진다. 수면 무호흡증이란, 수면 중에 호흡이 10초 이상 멈추는 증상을 말한다. 수면 무호흡증에는 기도주위의 늘어진 근육들 때문에 기도가 막혀서 발생하는 폐쇄성무호흡증과 기도가 막히지 않은 상태에서 숨을 쉬게 명령을 내리는 호흡 중추가 일시적으로 작동을 멈추어서 초래되는 중추성무호흡증 그리고 중추성과 폐쇄성을 혼합한 혼합성무호흡증이 있다. 이때, 무호흡증의 90%이상은 폐쇄성무호흡증이다.</p>
<p><span style="color: #3366ff"><strong>2) 수면 무호흡의 증상</strong></span><br />
수면무호흡증의 특징은 심한 코골이와 거친 숨소리가 동반되다가 무호흡으로 조용해진 다음 매우 시끄러운 소리와 함께 호흡이 다시 시작되는 것이다. 심한 코골이 환자 중에 35%정도가 수면무호흡증 증상이 나타난다고 한다. 수면무호흡증 환자들에게 나타나는 주간증상에는 주간 졸림증, 피로감, 공격적 성격이나 자극 과민성 불안감 우울반응 등 성격의 변화, 성충동 감소, 발기부전, 이산화탄소 축적으로 인한 심한 두통 등의 증상이 나타날 수 있다. 수면 중에는 야간 빈뇨, 식도역류, 과다발한, 심한 잠꼬대, 몽유병 등의 증상 등이 나타난다.<br />
수면 중에 코골이를 그냥 방치하게 되면 무호흡이 일어날 수 있는 확률이 높아진다. 수면 중 무호흡이 발생하면 뇌에 산소 공급이 부족해 자주 잠에서 깨게 된다. 그렇기 때문에 양질의 수면을 취할 수 없을 뿐 아니라 각성상태로 인해 심장을 비롯한 혈관계에 해로운 영향을 미쳐 심장질환등 대사증후군의 발생빈도를 높이게 된다. 이에 대한 연구결과를 살펴보면, 코를 자주 골수록 높은 혈압, 공복 고혈당, 고중성지방, 저고밀도지단 백콜레스테롤, 복부 비만의 유병률이 증가하였고 더불어 대사증후군의 유병률도 증가하였다. 그러므로 코골이 빈도의 증가는 대사증후군 및 대사증후군의 개별 대사 이상 항목과 유의한 관련성이 있었고, 특히, 일주일 동안 4일 이상의 코골이는 나이, 음주, 흡연, 체질량지수와 독립적으로 대사증후군의 위험 증가와 관련이 있었다.</p>
<p><span style="color: #800080"><strong>3. 선행연구</strong></span><br />
<span style="color: #3366ff"><strong>1) 기존 코골이 베개의 한계</strong></span><br />
<span style="color: #008080">가. 일반적인 코골이 베개</span><br />
일반적인 코골이 베개는 휴대하기 편하다는 장점이 있지만 잠을 자는데 다소 불편함이 있다. 코골이가 몸에 이상이 생겨서 생기는 경우가 있지만 과도한 스트레스 때문에 코골이가 발생할 수가 있으므로 코골이를 안 하는 사람도 어느 하루는 갑자기 코골이를 하는 경우가 발생한다. 이런 사람들에게는 일반적인 코골이 베개를 사용하는 것은 비효율적이다. 그리고 반드시 정자세로 자야 코골이 베개를 효율적으로 사용할 수가 있다는 단점도 있다.</p>
<table style="width: 620px" border="1" cellspacing="0" cellpadding="2">
<tbody>
<tr>
<td><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/ICT-베고파-2.jpg" rel="lightbox[27068]"><img class="size-full wp-image-27087 aligncenter" alt="ICT 베고파 (2)" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/ICT-베고파-2.jpg" width="598" height="313" /></a></td>
</tr>
<tr>
<td>그림 3. 약선 경추 베개 (출처 : http://blog.naver.com/hbhi0180/130180723301)</td>
</tr>
</tbody>
</table>
<p>● 비효율성</p>
<p>코골이가 비염이나 몸에 이상이 있는 경우에 발생을 하지만 과도한 스트레스 때문에도 코골이가 발생을 한다. 과도한 스트레스 때문에 자신도 모르게 코를 고는 경우가 발생하게 된다. 하지만 이러한 경우에도 다소 불편한 코골이 베개를 사용하는 것은 비효율적이다.</p>
<p>● 조정의 불가능<br />
일반적인 코골이 베개는 사람의 체형이 다름에도 불구하고 사용자의 체형에 따라 조정을 할 수가 없다. 코골이 베개를 베고 자도 기도가 덜 확보가 되어서 계속 코를 고는 경우가 발생을 하고 너무 지나치게 기도확보를 해서 목에 무리가 갈 수가 있다.</p>
<p><span style="color: #008080">나. 스마트 코골이 베개</span><br />
스마트 코골이 베개는 베개에 장착되어 있는 마이크로 소리를 인식하여 자는 사람의 기도를 자동으로 확보를 해준다. 그리고 마이크의 민감도와 베개가 부풀어 오르는 정도를 사용자가 조정을 할 수가 있다. 하지만 본인이 어느 정도 기도가 확보되어야 코를 골지 않은지 알 수가 없기 때문에 조정하는데 어려움이 있다. 그리고 주변 잡음이나 렘수면(Rem Sleep)일 때 발생하는 잠꼬대를 코골이 소리로 잘못 인식을 하는 경우가 있을 수가 있다.</p>
<table style="height: 0px;;width: 620px" border="1" cellspacing="0" cellpadding="2">
<tbody>
<tr>
<td><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/ICT-베고파-3.jpg" rel="lightbox[27068]"><img class="size-full wp-image-27088 aligncenter" alt="ICT 베고파 (3)" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/ICT-베고파-3.jpg" width="347" height="329" /></a></td>
</tr>
<tr>
<td>그림 4. 코골이 베개 (출처 : http://www.ebn.co.kr/news/view/660709)</td>
</tr>
</tbody>
</table>
<p>● 조정의 어려움</p>
<p>사람마다 몸의 체격과 체형이 다르기 때문에 기도확보를 위한 베개의 높낮이가 다르다. 베개를 너무 높게 조정을 하면 잠을 자는데 불편함을 느낄 수가 있고 너무 낮게 조정을 하게 되면 기도확보가 덜 되어서 계속 코골이를 하는 경우가 생긴다. 그러므로 본인 스스로가 이 베개가 작동함에도 코를 고는지 골지 않은지 모르기 때문에 혼자 사는 사람들에게는 이 코골이 베개를 조정하기 어려움이 있다.</p>
<p>● 주변 잡음으로 인한 오작동<br />
밖에서 천둥이 치거나 렘수면(Rem sleep)일 때 발생하는 잠꼬대 소리 같은 잡음 때문에 불필요하게 베개가 부풀어 오르는 경우가 생긴다. 그러므로 잠꼬대를 자주 하거나 잠자는 방에 방음처리가 잘 안 되는 경우 이 베개의 오작동이 자주 일어나는 불편함이 있다.</p>
<p><span style="color: #008080">다. 공통</span><br />
● 조정의 어려움<br />
사람마다 각자에게 맞는 높이가 있는데 일반적인 코골이 베개는 그 조정이 불가능 하고 스마트 코골이 베개는 다른 사람의 도움을 받아야 조정을 할 수가 있는 불편함이 있다.</p>
<p>● 비싼 가격<br />
위에서 소개한 일반적인 코골이 베개의 경우 소비자의 취향에 따라 베개를 따뜻하게 하는 온환, 베개를 차갑게 하는 냉환을 선택할 수 있다. 그러나, 그 기능 때문에 가격이 무려 12만원이나 한다. 또한, 스마트 코골이 베개의 경우는 무려 16만원이나 한다.</p>
<p><span style="color: #3366ff"><strong>2) 렘수면 (Rapid eye movement)</strong></span><br />
수면무호흡증의 대표적인 증상인 코골이는 대부분 렘수면 상태에서 일어난다. 우리가 코골이를 예방하기 위해서는 렘수면에 대해 알아보아야 한다. 일반적으로 수면단계에는 크게 렘수면 (Rapid eye movement)과 비렘수면 (non rapid eye movement)로 나뉜다. 비렘수면 (Non rapid eye movement)은 4단계로 나눌 수 있다. 첫 번째 단계인 N1단계는 잠에 빠져드는 구간이다. 이 구간은 매우 짧아서 몇 분 이내로 N2단계로 넘어간다. 이 구간에서는 환각과 환청이 일어나기도 한다. N1 단계의 뇌파는 알파파에서 세타파로 점차 넘어가고 점점 의식이 사라진다. 일반 성인의 잠에서 40~50%를 차지하는 N2 단계는 N1단계보다 조금 더 깊이 잠에 빠져드는 단계이다. 이 단계에서는 시간이 지날수록 무슨 일이 일어나는지 거의 의식을 하지 못한다. N3 단계는 수면 단계 중 가장 깊이 잠에 빠져드는 단계이다. 이 단계에서는 델타파라는 아주 낮은 뇌파가 많이 나타난다. 이 구간에서 다음에 일어나면 기억을 할 수 있는 렘수면 행동장애와 달리 일어나서 기억을 하지 못 하는 수면장애 현상이 자주 일어난다. 이 단계에서는 시간이 지날수록 델타파가 점점 더 많이 나타난다. N4 단계는 델타파가 50%이상 나타나는 구간을 말한다.</p>
<table style="width: 620px" border="1" cellspacing="0" cellpadding="2">
<tbody>
<tr>
<td><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/ICT-베고파-4.jpg" rel="lightbox[27068]"><img class="alignnone  wp-image-27089" alt="ICT 베고파 (4)" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/ICT-베고파-4.jpg" width="310" /></a></td>
<td><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/ICT-베고파-5.jpg" rel="lightbox[27068]"><img class="alignnone  wp-image-27090" alt="ICT 베고파 (5)" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/ICT-베고파-5.jpg" width="310" /></a></td>
</tr>
<tr>
<td style="text-align: center" colspan="2">그림 5. 수면단계에 따라 나타나는 수면 상태</td>
</tr>
</tbody>
</table>
<p><strong style="color: #800080">4. 작품의 기능 및 설계</strong></p>
<p>렘수면(Rapid eye movement)은 뜻 그대로 안구가 활발히 움직이는 수면상태를 말한다. 또한 수면 중에 뇌의 활동이 가장 활발할 때이다. 이때 뇌파를 분석해 보면 다른 수면단계들 보다 깨어있을 때의 뇌파와 가장 유사하다. 일반적으로 렘수면일 때 다음날 일어나서 기억할 수 있는 꿈을 꾸게 된다. 렘수면의 주기는 수면 후 90~110분이다. 렘수면 상태일 때는 안구가 움직일 뿐 아니라 온몸의 근육이 이완이 되며 코골이가 일어난다.</p>
<p><span style="color: #3366ff"><strong>1) ‘베고파’의 기능</strong></span><br />
1. Rotary Encoder를 통한 시간 체크 및 알람기능<br />
2. 코골이 인식 및 서보 모터를 이용한 사용자의 기도 확보</p>
<p><span style="color: #3366ff"><strong>2) ‘베고파’의 설계</strong></span><br />
<strong><span style="color: #800080">1. 알람기능</span></strong><br />
- 알람 시간 조정 -</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-01.jpg" rel="lightbox[27068]"><img class="alignnone size-full wp-image-27100" alt="베고파 01" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-01.jpg" width="620" height="312" /></a><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-02.jpg" rel="lightbox[27068]"><img class="alignnone size-full wp-image-27101" alt="베고파 02" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-02.jpg" width="620" height="297" /></a></p>
<p><span style="color: #800080"><strong>2. 수면패턴체크</strong></span></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-03.jpg" rel="lightbox[27068]"><img class="alignnone size-full wp-image-27102" alt="베고파 03" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-03.jpg" width="620" height="271" /></a></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-06.jpg" rel="lightbox[27068]"><img class="alignnone size-full wp-image-27093" alt="베고파 06" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-06.jpg" width="620" height="274" /></a></p>
<p>&nbsp;</p>
<p><span style="color: #800080"><strong>3.코골이 인식 및 DC모터를 이용한 사용자의 기도 확보</strong></span></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-07.jpg" rel="lightbox[27068]"><img class="alignnone size-full wp-image-27094" alt="베고파 07" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-07.jpg" width="620" height="786" /></a><br />
<span style="color: #800080"><strong>5. Total Flow Chart</strong></span></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-08.jpg" rel="lightbox[27068]"><img class="alignnone size-full wp-image-27095" alt="베고파 08" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-08.jpg" width="620" height="277" /></a><br />
<span style="color: #800080"><strong> 6. Making Cuts</strong></span></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-09.jpg" rel="lightbox[27068]"><img class="alignnone size-full wp-image-27096" alt="베고파 09" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-09.jpg" width="620" height="267" /></a></p>
<p><span style="color: #800080"><strong>7. Part of Product</strong></span></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-10.jpg" rel="lightbox[27068]"><img class="alignnone size-full wp-image-27097" alt="베고파 10" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-10.jpg" width="620" height="374" /></a></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-11.jpg" rel="lightbox[27068]"><img class="alignnone size-full wp-image-27098" alt="베고파 11" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-11.jpg" width="620" height="273" /></a></p>
<p><span style="color: #800080"><strong>8. 기대효과</strong></span><br />
<span style="color: #3366ff"><strong>1) 무호흡증의 예방</strong></span><br />
‘베고파’가 코골이를 인식하여 사용자의 기도를 확장함으로써 코골이가 심해져 무호흡증으로 이어지는 것을 예방한다.</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-12.jpg" rel="lightbox[27068]"><img class="alignnone size-full wp-image-27099" alt="베고파 12" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/베고파-12.jpg" width="629" height="119" /></a></p>
<p><span style="color: #3366ff"><strong>2) 알람기능</strong></span><br />
마이크와 진동센서를 통해 사용자의 수면상태가 렘수면일 때 기상할 수 있도록 확인함으로서 베개 사용자가 보다 상쾌하게 일어나게 해줄 수 있는 효과를 기대할 수 있다. 또한 휴대전화나 알람시계의 알람기능과는 달리 베개 안의 알람기능은 사용자들에게 보다 더 신선하게 다가갈 수 있다.</p>
<p><span style="color: #3366ff"><strong>3) 상품 상용화</strong></span><br />
이번 프로젝트에서 만드는 코골이베개의 사용대상은 코골이환자, 코골이로 인한 수면장애환자로 설정했다. 코골이의 대부분 원인인 스트레스가 큰 비중을 차지하고 있고, 뿐만 아니라 성인 남자의 50%, 성인 여자의 30%가 코골이 질환을 앓고 있다는 자료결과를 참고했을 때, 많은 사람들이 코골이 문제를 앓고 있다는 것을 알 수 있다. 따라서 현대인들은 코골이베개에 관심을 기울이게 되고 이 아이디어를 상품화하여 상용화 시킬 수 있다.</p>
<p><span style="color: #800080"><strong>9. 한계</strong></span><br />
첫째로 보유하고 있던 캐릭터 LCD의 고장으로 인하여 Rotary Encoder의 알람기능을 실시간으로 확인할 수 없어 테스트 당시 PC의 시리얼 모니터로 확인해야 했던 점이 아쉽다.<br />
둘째로 디바이스마트에서 구입한 12V 에어펌프는 사람의 머리를 들기에 출력이 떨어지고 많은 양의 전류를 소모하여 자칫 아두이노를 다운시킬 수 있기 때문에 이번 설계에서는 제외하였다.<br />
셋째로 생각보다 밀도가 높은 메모리폼 베개 때문에 서보모터가 제 출력을 발휘하지 못했지만 수면 중 사용자가 충분히 자극을 느낄 수 있다고 생각한다.</p>
<p><span style="color: #800080"><strong>10. 회로도 및 소스코드</strong></span></p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2015/02/ICT-베고파-21.jpg" rel="lightbox[27068]"><img class="alignnone size-large wp-image-27084" alt="ICT 베고파 (21)" src="http://www.ntrexgo.com/wp-content/uploads/2015/02/ICT-베고파-21-620x424.jpg" width="620" height="424" /></a></p>
<div class="symple-box yellow none" style="text-align:left; width:100%;"> 
<p>Arduino code<br />
#include &lt;Encoder.h&gt; // Encoder header 호출<br />
#include &lt;Servo.h&gt; // Servo header 호출<br />
#define SensorLED 13<br />
#define ButtonPin 12<br />
#define SensorIN 3<br />
#define SpeakerPin 9<br />
#define Mic 0<br />
#define Th 3600 //( 3600초 = 30분 )30분이전부터 사용자 스캐닝<br />
Servo myservo;<br />
int pos = 0;<br />
int micValue = 0;<br />
byte leds = 0;<br />
int numTones = 10;<br />
int tones[] = {261, 277, 294, 311, 330, 349, 370, 392, 415, 440};<br />
//알람 시 울릴 스피커 톤<br />
unsigned char state = 0;<br />
Encoder myEnc(2, 6);<br />
void setup() {<br />
Serial.begin(9600);//LCD의 고장으로 PC Serial baud설정<br />
pinMode(SensorLED, OUTPUT);<br />
pinMode(SensorIN, INPUT);<br />
attachInterrupt(1, blink, FALLING); //인터럽트 발생 시 반환값<br />
pinMode(ButtonPin, INPUT_PULLUP);<br />
myservo.attach(5); // 서보모터 디지털 핀 설정<br />
myservo.attach(4);<br />
}<br />
long oldPosition = -999;<br />
void loop() {<br />
micValue = analogRead(Mic);</p>
<p>int hour = 0;<br />
int minute = 0;<br />
long newPosition = myEnc.read();<br />
if (newPosition != oldPosition) {<br />
oldPosition = newPosition;<br />
hour = newPosition / 60; //encoder position에 따른 시각 및 분 설정<br />
minute = newPosition % 60;<br />
Serial.print(hour);<br />
Serial.write(“ : “);<br />
Serial.print(minute);<br />
Serial.write(“state: “);<br />
Serial.print(state);<br />
Serial.write(“mic: “);<br />
Serial.print(micValue);<br />
Serial.write(“\n”);<br />
}<br />
else if (digitalRead(ButtonPin) == LOW )<br />
{<br />
delay((oldPosition-Th)*1000);<br />
//시간 설정 후 버튼을 누르면 그때부터 카운트 알람 시작<br />
//30분 이전부터 진동센서가 반응 시 알람 시작<br />
if(state&gt;50)<br />
{<br />
for(pos = 0; pos &lt; 180; pos += 1) // goes from 0 degrees to 180 degrees<br />
{ // in steps of 1 degree<br />
myservo.write(pos); // tell servo to go to position in variable ‘pos’<br />
delay(15); // waits 15ms for the servo to reach the position<br />
}<br />
for(pos = 180; pos&gt;=1; pos-=1) // goes from 180 degrees to 0 degrees<br />
{<br />
myservo.write(pos); // tell servo to go to position in variable ‘pos’<br />
delay(15); // waits 15ms for the servo to reach the position<br />
}<br />
for (int i = 0; i &lt; numTones; i++) //톤 스피커<br />
{<br />
tone(SpeakerPin, tones[i]);<br />
delay(500);<br />
}<br />
noTone(SpeakerPin);<br />
}</p>
<p>}}<br />
}<br />
void blink() //인터럽트 함수<br />
{ state++;<br />
}<br />
</div>
<span style="color: #800080"><strong>11. 참고문헌</strong></span><br />
<strong>수면 무호흡증과 코골이</strong><br />
http://health.naver.com /medical/disease/columnAndFaqDetail.nhn?columnFaqCode=SAM_C161&amp;column FaqTypeCode=column<br />
<strong>코골이 환자 비율</strong><br />
http://cafe.daum.net/love.family/3Itl/776?q=%C4% DA%B0%F1%C0%CC%20%C4%A1%B7%E1%20%B1%E2%B4% EB%C8%BF%B 0%FA&amp;re=1<br />
<strong>코골이와 비만의 관계</strong></p>
<p>http://blog.naver.com/PostView.nhn?blogId=djyedent&#038;logNo=10181639742</p>
<p><strong>기타</strong></p>
<p>http://Arduino.cc</p>
<p><span style="color: #800080"><strong>12. 출처</strong></span><br />
<strong>그림1 및 3-1 : </strong>(재미있는 인체 이야기, 2006.12.13., 가나출판사)<br />
<strong>그림2 : </strong>http://blog.naver.com/hbhi0180?Redirect=Log&amp;logNo=130180723301http://cafe.naver.com/reviewhome/38797 (수면무호흡증 사진)<br />
<strong>그림3 : </strong>http://www.ebn.co.kr/news/view/660709<br />
<strong>그림4 : </strong>http://cafe.daum.net/ConjugialLove/DHK9/41?q=%B7%BD%BC%F6%B8%E9%20% C1%D6%B1%E2&amp;re=1<br />
<strong>그림 5 : </strong>http://blog.naver.com/rozerie/100172660605</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ntrexgo.com/archives/27068/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[26호]JARDUINO-UNO-BTmini 출시</title>
		<link>http://www.ntrexgo.com/archives/26391</link>
		<comments>http://www.ntrexgo.com/archives/26391#comments</comments>
		<pubDate>Mon, 01 Sep 2014 04:51:34 +0000</pubDate>
		<dc:creator>디바이스마트 매거진</dc:creator>
				<category><![CDATA[디바이스마트 매거진]]></category>
		<category><![CDATA[프로덕트 뉴스]]></category>
		<category><![CDATA[26호]]></category>
		<category><![CDATA[NEWS]]></category>
		<category><![CDATA[product]]></category>
		<category><![CDATA[디바이스마트]]></category>
		<category><![CDATA[매거진]]></category>
		<category><![CDATA[제이씨넷]]></category>

		<guid isPermaLink="false">http://www.ntrexgo.com/?p=26391</guid>
		<description><![CDATA[디바이스마트매거진 26호 &#124; 제이씨넷에서 블루투스 기반의 신제품 2종을 새롭게 출시했다.]]></description>
				<content:encoded><![CDATA[<table>
<tbody>
<tr>
<td><a href="http://www.ntrexgo.com/wp-content/uploads/2014/09/제이씨넷-JMOD-BT-PC.jpg" rel="lightbox[26391]"><img class="alignnone size-medium wp-image-26392" alt="제이씨넷 JMOD-BT-PC" src="http://www.ntrexgo.com/wp-content/uploads/2014/09/제이씨넷-JMOD-BT-PC-300x213.jpg" width="300" height="213" /></a></td>
<td><a href="http://www.ntrexgo.com/wp-content/uploads/2014/09/제이씨넷-01.jpg" rel="lightbox[26391]"><img class="alignnone size-medium wp-image-26393" alt="제이씨넷 01" src="http://www.ntrexgo.com/wp-content/uploads/2014/09/제이씨넷-01.jpg" width="258" height="187" /></a></td>
</tr>
<tr>
<td>JMOD-BT-PC</td>
<td>JARDUINO-UNO-BTmini</td>
</tr>
</tbody>
</table>
<p>&nbsp;</p>
<p><strong><span style="font-size: x-large">JARDUINO-UNO-BTmini 출시</span></strong></p>
<p>제이씨넷에서 블루투스 기반의 신제품 2종을 새롭게 출시했다.<br />
JARDUINO-UNO-BTmini는 아두이노 UNO R3와 기능이 동일하며, USB를 통한 유선 프로그램 업로드와 블루투스 시리얼 모듈을 통한 무선 프로그램 업로드가 모두 가능한 모듈이다. 소형 로봇이나 장남감 자동차 등 움직이는 타겟이나 손이 닿지 않는 곳에 장착된 소형 타겟 등에 매우 유용하며, 업로드 후에는 무선으로 블루투스 통신도 가능한 획기적인 제품이다.<br />
JMOD-BT-PC는 PC의 시리얼(COM) 포트를 통한 입출력을 블루투스 신호로 바꾸어 무선으로 송수신해주는 블루투스 시리얼 동글임과 동시에 JMOD-BT-1 모듈을 손쉽게 셋업할 수 있는 기능을 가진 JMOD-BT-1 셋업 툴이다. 마스터 모드 및 슬레이브 모드 설정이 가능하며 제이씨넷의 자사 제품인 JMOD-BT-1과 셋업이 가능하다.<br />
보다 자세한 사항은 디바이스마트와 제이씨넷 홈페이지에서 확인 가능하다.<br />
TEL. 042-486-0761<br />
www.jcnet.co.kr</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ntrexgo.com/archives/26391/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[26호]샤오미 보조배터리 [10400mAh] 출시</title>
		<link>http://www.ntrexgo.com/archives/26382</link>
		<comments>http://www.ntrexgo.com/archives/26382#comments</comments>
		<pubDate>Mon, 01 Sep 2014 04:24:33 +0000</pubDate>
		<dc:creator>디바이스마트 매거진</dc:creator>
				<category><![CDATA[디바이스마트 매거진]]></category>
		<category><![CDATA[프로덕트 뉴스]]></category>
		<category><![CDATA[26호]]></category>
		<category><![CDATA[NEWS]]></category>
		<category><![CDATA[product]]></category>
		<category><![CDATA[디바이스마트]]></category>
		<category><![CDATA[매거진]]></category>
		<category><![CDATA[샤오미]]></category>

		<guid isPermaLink="false">http://www.ntrexgo.com/?p=26382</guid>
		<description><![CDATA[디바이스마트 매거진 26호 &#124; 중국의 애플로 유명한 스마트폰 업체인 샤오미의 보조배터리가 한국 온라인 시장에서도 판매가 시작되었다. ]]></description>
				<content:encoded><![CDATA[<table>
<tbody>
<tr>
<td><a href="http://www.ntrexgo.com/wp-content/uploads/2014/09/샤오미-보조배터리-10400mAh.jpg" rel="lightbox[26382]"><img class="alignnone  wp-image-26384" alt="샤오미 보조배터리 [10400mAh]" src="http://www.ntrexgo.com/wp-content/uploads/2014/09/샤오미-보조배터리-10400mAh-300x300.jpg" width="270" height="270" /></a></td>
<td><a href="http://www.ntrexgo.com/wp-content/uploads/2014/09/샤오미-보조배터리-10400mAh-02.jpg" rel="lightbox[26382]"><img class="alignnone  wp-image-26383" alt="샤오미 보조배터리 [10400mAh] 02" src="http://www.ntrexgo.com/wp-content/uploads/2014/09/샤오미-보조배터리-10400mAh-02-300x258.jpg" width="270" height="232" /></a></td>
</tr>
</tbody>
</table>
<p>&nbsp;</p>
<p><strong style="font-size: x-large">샤오미 보조배터리 [10400mAh] 출시</strong></p>
<p>&nbsp;</p>
<p>중국의 애플로 유명한 스마트폰 업체인 샤오미의 보조배터리가 한국 온라인 시장에서도 판매가 시작되었다. 1만 400mAh의 거대한 용량으로 IT기기를 배터리 걱정 없이 충전이 가능하고, 배터리를 구성하는 셀은 LG, 삼성, 파나소닉, LISHEN 제품을 사용해 품질이 좋다. 가격은 비슷한 용량인 국내 대기업 제품과 비교해 두 배 가량 저렴하다. 별도 구매이지만, 깔끔한 디자인에 다양한 색상의 젤리 케이스를 씌울 수 있게 마련되어 취향에 맞게 선택할 수 있다. 위조품이 있을 만큼 한국에서도 큰 인기를 얻고 있으며, 가격, 디자인, 품질 삼박자를 고루 갖춰 평이 좋다. 제품의 보다 자세한 내용은 디바이스마트 홈페이지에서 확인이 가능하다.</p>
<p>www.mi.com</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ntrexgo.com/archives/26382/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[26호]iPlatz-A1620 출시</title>
		<link>http://www.ntrexgo.com/archives/26376</link>
		<comments>http://www.ntrexgo.com/archives/26376#comments</comments>
		<pubDate>Mon, 01 Sep 2014 04:10:40 +0000</pubDate>
		<dc:creator>디바이스마트 매거진</dc:creator>
				<category><![CDATA[디바이스마트 매거진]]></category>
		<category><![CDATA[프로덕트 뉴스]]></category>
		<category><![CDATA[26호]]></category>
		<category><![CDATA[NEWS]]></category>
		<category><![CDATA[product]]></category>
		<category><![CDATA[디바이스마트]]></category>
		<category><![CDATA[매거진]]></category>
		<category><![CDATA[유니로보틱스]]></category>

		<guid isPermaLink="false">http://www.ntrexgo.com/?p=26376</guid>
		<description><![CDATA[디바이스마트 매거진 26호 &#124; (주)유니로보틱스는 다양한 아이디어를 실현시킬 수 있는 디자인 오픈소스 하드웨어 플랫폼인 아이플라츠를 브랜드화 하여 제품을 출시했다. 그 첫번째 모델인 iPlatz-A1620은 아두이노 우노를 기반으로한 초소형 플랫폼으로 아두이노를 사용했던 사용자라면 누구나 쉽게 사용할수 있는 제품이다.]]></description>
				<content:encoded><![CDATA[<p>&nbsp;</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2014/09/유니로보틱스-01.jpg" rel="lightbox[26376]"><img class="alignnone size-medium wp-image-26377" alt="유니로보틱스 01" src="http://www.ntrexgo.com/wp-content/uploads/2014/09/유니로보틱스-01-300x225.jpg" width="300" height="225" /></a></p>
<p><span style="font-size: x-large"><strong>iPlatz-A1620 출시</strong></span></p>
<p>(주)유니로보틱스는 다양한 아이디어를 실현시킬 수 있는 디자인 오픈소스 하드웨어 플랫폼인 아이플라츠를 브랜드화 하여 제품을 출시했다. 그 첫번째 모델인 iPlatz-A1620은 아두이노 우노를 기반으로한 초소형 플랫폼으로 아두이노를 사용했던 사용자라면 누구나 쉽게 사용할수 있는 제품이다.<br />
34x34x9mm로 제품의 기본적인 크기를 줄였고 Arduino Uno(R3) 제품과 기능, 성능, 사용법은 같다. 다른점이 있다면 포트 부분 이다. iPlatz-A162에는 전원, Micro-USB, Digital-A, Dgital-B, ANALOG까지 총 5개의 포트가 있다. USB는 일반적인 안드로이드 스마트폰 케이블인 마이크로USB와 호환 가능하며 2개의 디지털과 아날로그 포트에는 시중에서 쉽게 구하고 사용할 수 있는 몰렉스(51021)커넥터로 제작됐다. 기존 아두이노를 사용하면서 조금더 작고 편한 제품을 원했다면 iPlatz-A1620을 추천한다.<br />
제품의 보다 자세한 사항은 디바이스마트 홈페이지를 통해 확인 가능하다.</p>
<p><strong>제품 특징</strong><br />
· 케이스 및 안정적인 디자인<br />
· 아두이노 우노 호환<br />
· 쉬운 사용<br />
· 초소형 사이즈 (Dimensions : 34 x 34 x 9 mm)<br />
· 손 쉽고 깔끔한 와이어링 (Molex 커넥터)<br />
· 1개의 리셋 버튼<br />
· 4개의 상태 LED (Power indicator, RX, TX, LED)</p>
<p>TEL. 070-4806-3141<br />
www.iplatz.cc</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ntrexgo.com/archives/26376/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
