비콘 위치기반 이미지 데이터 송신 프로그램.docx
0.51MB

소프트웨어 6단계 개발 절차

1. Requirement 

2. Analysis           요구사항 정의서

3. Design            설계 시작

4. Implement       프로그램 짜기

5. Test                에러잡고 디버깅   이게 길게걸림

6. Deployment     사용법 

 

 

 

2017.09.22 프로젝트의 분석과 설계_rev2.pdf
0.47MB

설계하는법

 

버퍼에서 

sprintf(buf,"%d", n);

sscanf("buf,"%lf",&d);

블로그 이미지

Or71nH

,

 

## 다이오드
• + 또는 - 방향으로만 전류를 흐르게 하여 일반적으로 정류회로에 사용되는 부품
• 다이오드의 활용
  – 다이오드의 성질을 이용하여 교류(AC)를 직류(DC)로 변환하는 정류작용에 이용
  – AM라디오 전파 내에 포함되어 있는 음성 신호를 추출하는 검파회로에 이용

 

## 진성반도체
• 불순물을 첨가하지 않은 순수한 반도체
• 불순물을 전혀 포함하지 않음
• 가전자대와 전도대의 사이에 가로놓여진 에너지간격(energy gap)을 지나 들뜨게 된 전자와 정공의 양쪽에 의해 전기전도가 전혀 일어나지 못하는 반도체
• 4가의 공유결합을 한 진성반도체
  – 순도를 높이면 높일수록 반도체는 전기전도가 전혀 일어나지 못하는 상태에 가까워짐
  – 전자 수와 정공 수는 거의 같고 부도체에 가까움
  – 해당하는 원소는 실리콘(Si)과 게르마늄(Ge)

 

 

## P형 반도체
• 반도체는 순수 실리콘(Si)이나 게르마늄(Ge)에 소량의 3가 원소인 인듐(In)을 혼합하면 원자 대신 3가인 인듐 원자가 게르마늄과 공유결합을 하게 됨
• 인듐 원자는 4가인 게르마늄 원자보다 1개의 전자가 부족
• 부족한 전자를 채우기 위해 주위에서 전자를 끌어당기는 흡인력을 갖게 되고 여기서 전자가 부족한 곳은 (-)전하를 가진 전자를 끌어들이려 함
• 정공(hole) : (+)전하가 있는 것과 같으나 실제로는 아무것도 없으므로 (+)전하의 성질을 띤 구멍이라는 뜻

 

## N형 반도체
• 순수 실리콘이나 게르마늄에 5가 원소인 비소(As), 안티몬(Sb)을 결합시키면 5가인 비소가 실리콘과 공유결합을 하게 됨
• 5가인 비소가 실리콘과 공유결합
• 비소의 전자 4개는 4가 원소인 실리콘과의 공유결합에 사용

• 나머지 1개는 결합을 할 곳이 없어 이동하기 쉽고 불안정한 상태로 남음

• 자유전자 혹은 과잉전자로 비교적 전류가 흐르기 쉬운 상태가 됨

 

 

## 다이오드의 구조와 동작 원리 
• P형 반도체와 N형 반도체를 접합한 것
• P형 반도체와 N형 반도체를 접합할 경우 : P형 반도체와 N형 반도체가 접합되어 있는 부근에는 서로간의 흡인력으로 인해 정공과 전자는 서로 상대 영역으로 확산이 일어남

 

 

## 실리콘 특성 곡선

• 교류 전기를 직류 전기로 변환 할때 활용

 

## 게르마늄 다이오드

• 순방향 특성이 좋으나 역내 전압이 낮아 높은 전압의 정류에 부적당

• 고속의 스위칭[ON/Off] 회로에 적합

 

## 실리콘 다이오드

• 순방향 특성이 게르마늄보다 떨어지나 역내 전압이 높아 전류용이나 높은 전압의 정류에 적합

 

## 다이오드의 분류와 기호

 

## 검파다이오드와 정류다이오드
• 검파다이오드
– 반도체 금속을 접촉하여 만든 점 접촉형다이오드(쇼트키다이오드) 사용
– 접합 용량이 적어서 고주파용으로 적합하고 검파, 변조, 혼합, 스위칭 등에 사용
• 정류다이오드
– P형 반도체와 N형 반도체를 접합하여 만든 것으로 확산 접합형과 합금 접합형

 

 

## 제너다이오드
• PN 적합에 역방향 전압을 점차 증가시키면, 어느 전압에서 역방향 전류가 급격히 증가해 저항 값이 매우 작아짐
• 「항복 현상」이라 하며 전압을 「항복 전압」이라 함
• 항복전압 Vz에 도달하기까지 역방향전류는 소량
• Vz 전압에서 매우 급하게 역방향 전류 증가

 


• 정전압 특성을 이용하여 전압 안정화 회로에 응용

 

 

## 터널다이오드
• PN 접합다이오드에서 불순물의 농도를 매우 크게 하면 얇은 공핍층에 높은 전계가 걸려서 터널 효과에 의한 터널 전류가 흐름
• 터널 전류 : 에사키전류
• 다이오드 : 에사키다이오드

• 터널다이오드 특성 곡선을 순방향에서의 부성 저항을 이용해 증폭
• 마이크로파 발진회로, 스위칭회로 등에 사용

 

## 발광다이오드(LED)
• LED(Light Emitter Diode)라고도 함
• 여기상태의 전자 에너지가 기저상태로 환원될 때 가지고 있던 위치 에너지를 빛 에너지로 발산해 기존의 필라멘트 전구와 다름
• 전자적인 발광현상을 이용해 각종 표시장치에 이용
• 발광다이오드는 여러 가지 종류와 특성이 다르므로 이에 맞추어 선택해 사용
  – 주로 적색, 녹색, 황색이 많고 청색도 있음
  – 하나의 발광다이오드에 적, 녹의 발광모드가 함께 포함되어 있어 각각 전압을 인가하면 황색이 나타남
  – 전압의 크기에 따라 색상이 다르게 발광하도록 설계된 다이오드도 있음

 

 

## 수광다이오드
• 포토(Photo)다이오드라고도 하며 발광다이오드로부터 나오는 빛을 검출하여 그 특성을 이용한 광센서회로에 활용
• 포토커플러(Photo coupler)회로를 구성하여 회로와 회로 간에 완전 절연을 설계하는데 사용 

 

## 가변용량다이오드
• 다이오드 양단에 역방향의 전압을 가했을 때, 다이오드의 접합면이 가지고 있는 용량 값이 변화, 전압의 변화에 따라 접합 용량 값이 변화하는 소자
• 전압이 증가할수록 용량이 작아짐
• 가변용량 특성을 이용해 FM 변조회로의 AFC 동조회로에 응용됨 

 

## 브리지다이오드
• 전파정류를 위하여 다이오드 4개를 다리형태로 연결
• “+”전압과 “-”전압을 교대로 하여 한 반향으로 정류될 수 있는 전파정류회로를 설계할 수 있도록 한 소자
• 소자 특성을 이용하여 전파 정류회로 구성에 사용

 

 

블로그 이미지

Or71nH

,

## RLC 회로의 개요

 전압-전류와의 관계 
• 콘덴서 양단에 걸린 전압 - V 
• 축전기(콘덴서)의 전기용량 - C 
• 축전기에 저장되는 전하량 Q=CV2

 

#RLC 회로

RLC 회로

• RLC 회로 : 전기, 전자 회로에서 저항기, 코일, 콘덴서로 이루어진 회로

 

 

## 유도성 리액턴스

유도성 리액턴스

• 저항 : 직류 또는 교류에서 동일한 저항 값을 가짐

• 코일과 콘덴서 : 교류에서 전류의 흐름을 방해하는 성질을 가짐

 

## 용량성 리액턴스 

 

용량성 리액턴스
• 리액턴스(Reactance) : 교류에서 전류의 흐름을 방해하는 성질을 가짐
• 콘덴서: 용량성 리액턴스(Xc)라 하며 각각 Xc로 표기
• 사용 단위: R과 X가 합성되어 있을 때 임피던스라고 하며 “Z”로 표기

 

 

#리엑턴스 구하는 방식

 

 

 

 

 

## 리액턴스 

리액턴스 
 주파수에 비례 또는 반비례 
 R, L, C 복합 회로에서 위상차 발생 
 위상차로 인해 특정 주파수가 인가될 때는 공진(Resonance) 현상 발생

 

 

##  공진주파수 회로

 공진주파수 회로

• LC 직렬회로
• 병렬 공진 회로
• 발진 회로와 주파수 또는 임피던스 측정 회로로 널리 사용
• 유도 리액턴스 성분 : 주파수가 증가할수록 커짐
• 용량 리액턴스 성분 : 주파수가 증가할수록 작아짐
• 유도 리액턴스와 용량 리액턴스 값이 같아지는 주파수는 공진주파수
• 공진주파수 공식

 

저역통과 필터(LPF)
• 코일과 콘덴서 소자로 구성하며 필터 회로에 활용
• 필터는 특정한 주파수 대역의 신호를 통과 또는 차단하는 기능을 가짐
• 주파수가 낮은 영역의 신호 성분 : L에 의해서 통과
• 주파수가 높은 영역의 신호 성분 : 코일의 임피던스가 높아짐과 동시에 콘덴서의 임피던스는 낮아져 고주파 신호 성분은 통과하지 못하고 콘덴서를 통해서 접지로 흐름

 

## 고역통과 필터(HPF) 

고역통과 필터(HPF)
• 주파수가 낮은 영역의 신호 성분 : 콘덴서에 의해서 통과 불가
• 주파수가 높은 영역의 신호 성분 : 코일의 임피던스가 높아짐과 동시에 콘덴서의 임피던스는 낮아져 고주파 신호 성분은 콘덴서를 통해서 출력 단자로 통과

 

## 대역통과 필터(BPF) 

대역통과 필터(BPF)
• 직렬로 접속한 코일과 콘덴서 회로는 공진 주파수 부근의 신호 성분만 통과
• 병렬로 접속한 LC 회로는 공진 주파수 부근이 되면 접지에 대한 신호 성분을 바이패스(By pass)시키는 기능 상실
• 공진 주파수 부근에 있는 대역의 신호 성분만 통과시킴

 

##  필터의 특성 곡선

필터의 특성 곡선

• x 축-주파수에 따른 라디안 값

• y 축-입력 전압 대비 출력되는 전압 표기

• LPF 저역통과 필터 : 점점 하양함

• HPF 고역통과 필터 : 점점 상양함

• BPF  대역통과 필터 : 상하향 곡선을 그림

 

## 평활 회로

코일 입력형과 콘덴서 입력형
• 코일 입력형
– 코일을 입력형으로 설계한 코일
• 콘덴서 입력형
– 콘덴서를 회로와 같이 구성
– 입력을 통해 주파수를 통과 시킴
– 출력 단자 맥류에 남아있는 교류 성분 제거
– 직류 성분만을 OUT(출력)시킴
– 저주파 필터 회로

 

• 인덕터(L)를 이용한 평활 회로
– 고주파 성주 : 통과 불가
– 저주파 성분 : 통과
• 커패시터(C)를 이용한 평활 회로
– 고주파 성주 : 통과
– 저주파 성분 : 통과 불가

• 입력의 고주파는 커패시터와 인덕터에 의해 제한되고, 낮은 주파수를 포함한 직류 성분만 출력

 

## 파이(Π) 형 필터
• 평활 회로 중 가장 성능이 우수한 파이형 필터
• 인덕터 입력형 LC회로 + 커패시턴스 입력형 CL회로
• 회로의 전원 입력단에 전원 잡음 제거용으로 가장 많이 사용
• CLC필터는 효율이 좋지만, 가격 면에서 CRC필터보다 비쌈

 

## 미분 회로(Differentiator, Differential Circuit)
• 신호에 대한 미분 연산을 전기 회로적으로 수행
• 입력 신호 파형의 시간 미분(시간 변화율)에 비례하여 출력을 발생 시킴
• 미분기 해석은 펄스(Pulse) 응답의 관점에서 저항 양단의 출력 전압을 얻는 직렬 RC 회로로 구성
• 미분기의 활용분야
  – 구형파 앞과 끝의 순간(Leading Edge, Trailing Edge)을 검출시키는 회로로 사용
  – 램프 신호 입력으로부터 미분파 출력 회로에 활용

## 적분 회로(Integrator, Integration Circuit)
• 신호에 대한 적분 연산을 전기 회로적으로 수행
• 입력 신호 파형의 시간 적분에 비례하여 출력을 발생시킴
• 적분기 해석은 펄스 응답의 관점에서 커패시터 양단에서 출력 전압을 얻는 직렬 RC 회로
• 커패시터 충전과 방전의 속도는 RC 시정수에 의해 결정
• 커패시터 양단의 전압은 순간적으로 변화될 수 없고, 지수함수적으로 서서히 변화

## RC 회로

## RC 회로

 

## RL 회로

## RL 회로

블로그 이미지

Or71nH

,

뭔가 더추가해야한다

위에 설치를 완료하고 시작 하면 된다

 

 

 

이건 주말에 복스임..

 

 

 

 

들어간다음

 

ㄴshow databases ;

로 확인을하고

 

데이터 배이스를 만들어보자 

 

이제 테이블도 만들고 

 

엔터 지면 -> 이 생김

mysql> create table test (name char(10), 
    -> age int,
    -> pet char(10)
    -> );

 

에러가 떳다 

데이터 베이스가 정해지지 않아서 ,,

use test;

mysql> create table test (name char(10),  age int, pet char(10) ); 

를 하고 다시쳐준다

 

이제 글좀 써넣어 보자

 

insert into test values ('me', '20', 'cat');

만들고 이제 불러와보자

 

 

 

mysql.c 에 만들어주고

#include <stdio.h>
#include <mysql/mysql.h>

int main()
{
	MYSQL mysql;
	MYSQL_RES *myresult;
	MYSQL_ROW row;
	unsigned int num_fields;
	unsigned int num_rows;
	char*string_query;
	mysql_init(&mysql);
	mysql_real_connect(&mysql,"localhost","root","1234","test",0,NULL,0);
	string_query="select*from test \n";

	mysql_query(&mysql,string_query);
	myresult=mysql_store_result(&mysql);
	while(row=mysql_fetch_row(myresult))
		printf("%s\t%s\n",row[0],row[1]);
	mysql_free_result(myresult);
	mysql_close(&mysql);
	return 0;
}

 

 

 

설치된 경로 찾기 

 

 

 

 

패키지  찾고 

dpkg -l | grep mysql | grep dev

 

 

이름으로 검색

 

dpkg -L libmysqlclient-dev

 

 

요기 찾앗다 

 

 

 

C파일 만든곳 들어가준 다음에 

 

 

mysql.c 아까 친것이 보이네요

 

 

 

gcc mysql.c -I/usr/include/mysql/ -Wall -g -lmysqlclient -g

 

언제나 에러와 함께하지만 

당황하지 말고 경고니깐 실행은 됨

하 세그맨 테이션 오류라니!

 

 

그럼 관리자로 시작해버려

강제로 됫움 ㅎㅎ.

됫어 그럼

블로그 이미지

Or71nH

,

일단은 mysql 설치부터 해야한다

보면 위에 

sudo apt-get install mysql-server mysql-client

이거 쳐주고 띄어쓰기 주의!!

 

Y 만 눌러주면 설치 잘해줌

 

 

 

 

다시하면 설치되있어서 이리뜸

 

 

이제 소두를 이용해서 mysql 를 실행하자

 

 

 

database 들중에서 

 

use mysql;

을 사용하여 들어간다!

 

 

그리고 좀봄

저기 유저가 보인다 저기로그인 정보가 있을것이다

함불러와 보자 

 

정말 보기힘들지마 

authentication_string 이 암호다!

게불러오자

난 암호가 설정해줘서 이렇게 암호가 있다고 나온다

 

암튼 암호 바꾸기 시작해보자 

 

update user set authentication_string=password('1234') where user='root';

 

바뀜

리플레쉬 한번 해주고

 

flush privileges;

 

나가자

이거나 exit;

 

이거  quit;

암거나 둘다됨

 

그럼 이제 인터넷이 연결될 수 있게

 

하 /....  파일부터 찾자 안나오더라 한번에 

mysql 에서 mysqld.cnf를 찾아야한다

찾움

참고 위치

cd /etc/mysql/mysql.conf.d/

 

 

이제 vi 로 들어가서 좀 지우자

#붙이면 주석 처리되서

실행이 안되게 된다

 

수정이 안된다...

 

 

관리자 권한으로 해야한다

 

sudo vi mysqld.cnf

 

 

 

수정하고 그럼 이제  다시시작

 

sudo service mysql restart

 

 

이제 준비는 완료하엿다

mysql 관리자 권한만 수정하면 

 

하고싶은데로 할수 있다

 

 

 

mysql 들어가서 

 

grant all privileges on *.* to root@localhost identified by '1234';

권한 설정 하는거임 

 

 

끝 쓰면됨

 

 

 

 

 

블로그 이미지

Or71nH

,