메뉴 English Ukrainian 러시아인 홈

애호가 및 전문가를 위한 무료 기술 라이브러리 무료 기술 라이브러리


라디오 전자 및 전기 공학의 백과사전
무료 도서관 / 무선 전자 및 전기 장치의 계획

아두이노. 아날로그 입출력의 작동은 소리와 함께 작동합니다. 무선전자공학 및 전기공학 백과사전

무료 기술 라이브러리

무선 전자 및 전기 공학 백과사전 / 라디오 아마추어 디자이너

기사에 대한 의견 기사에 대한 의견

디지털 입출력 작업을 통해 광범위한 문제를 해결할 수 있지만 Arduino 보드의 마이크로 컨트롤러에 내장된 아날로그-디지털 변환기(ADC)가 있고 펄스 폭 변조를 사용하여 아날로그 신호를 출력하는 기능( PWM)은 아날로그 센서 및 모든 종류의 액추에이터와의 작동을 보장하여 제어 신호에 비례하여 물체에 영향을 미칩니다.

엄밀히 말하면 출력 모드에서 모든 Arduino 포트 라인은 두 가지 상태만 갖는 개별 신호만 전송할 수 있습니다. 그러나 마이크로컨트롤러는 이러한 상태를 매우 빠르게 변경하여 직사각형 펄스를 생성할 수 있습니다. 이러한 펄스가 관성 속성을 가진 장치에 적용되면 장치에 공급되는 전압이 펄스의 평균값과 동일하게 일정하고 높음과 낮음 사이가 점프하지 않고 부드럽게 변하는 것처럼 동작하기 시작합니다. 논리적 수준.

PWM 모드에서 포트는 일정한 주파수와 가변 듀티 사이클(펄스 반복 주기와 지속 시간의 비율)의 펄스 신호를 생성합니다. 종종 듀티 사이클 대신 역값, 즉 0(펄스 없음)에서 100%(펄스가 일시 중지 없이 병합되고 병합됨)로 변경될 수 있는 듀티 사이클로 작동합니다. 따라서 특정 순간에 출력 전압이 높거나 낮은 논리 레벨에 해당하더라도 평균값은 듀티 사이클에 비례합니다. 일반 멀티미터를 이 출력에 연결하면 이 값이 표시됩니다(물론 펄스 주파수가 충분히 높은 경우).

Arduino UNO에서는 출력 D3, D5, D6, D9, D10 및 D11이 PWM 모드에서 작동할 수 있습니다. 일반적으로 보드에는 "~" 기호 또는 약어 "PWM"이 표시되어 있습니다. 다른 수정 사항을 적용한 Arduino 보드에는 이러한 출력이 다소 있을 수 있다는 점에 유의해야 합니다.

가장 간단한 경우에는 PWM을 사용하여 LED의 밝기를 제어할 수 있습니다. 이 장치는 실질적으로 관성이 없지만 인간의 시각에는 일련의 빠른 LED 플래시가 채우기 비율에 따라 밝기가 달라지는 연속 발광으로 인식될 만큼 충분한 관성이 있습니다.

PWM을 생성할 수 있는 개별 출력은 기본적으로 이 모드를 사용하도록 구성되므로 이 모드에서 작동하기 위해 pinMode() 함수를 호출할 필요가 없습니다. PWM 신호의 듀티 사이클을 설정하려면 표준 함수인 AnalogWrite(N, M)이 있습니다. 여기서 N은 핀 번호이고 M은 필요한 듀티 사이클에 비례하는 숫자입니다. 이 값은 0~255 범위에 있어야 하며, 0은 듀티 사이클 255(출력에서 일정한 낮은 레벨), 100~1% 듀티 사이클(출력에서 일정한 높은 레벨)에 해당합니다. 특정 M 값에서 출력 전압의 타이밍 다이어그램과 이에 따른 단락 듀티 사이클이 그림 XNUMX에 나와 있습니다. XNUMX.

아두이노. 아날로그 I/O 작업, 오디오 작업
쌀. 1. 출력 전압의 타이밍 다이어그램

예를 들어, 표에 주어진 것을 생각해 보십시오. 디지털 출력 D1에 연결된 LED의 밝기를 점차적으로 증가시킨 다음 점차적으로 감소시키는 9개의 프로그램입니다. 이는 Arduino IDE와 함께 제공되는 표준 example3.AnalogFading을 기반으로 합니다. 펄스 듀티 사이클 값의 열거는 [1]에서 이미 설명한 for 루프 연산자를 사용하여 구현됩니다.

1 표.

아두이노. 아날로그 I/O 작업, 오디오 작업

Arduino의 외부 장치로부터 아날로그 신호를 수신하기 위해 입력 A0-A5가 의도되었으며 기본적으로 이를 위해 원하는 상태로 설정되므로 추가 초기화가 필요하지 않습니다. Arduino UNO에 내장된 ADC는 10비트 바이너리 코드를 생성하고 0~+5V 범위의 입력 전압을 0~1023(210-1)의 정수로 변환합니다.

변환 결과를 읽으려면 AnalogRead(N) 함수를 사용하십시오. 여기서 N은 아날로그 입력 번호입니다.

다양한 센서를 Arduino 아날로그 입력에 연결할 수 있으며, 출력 전압은 측정된 값(가변 저항기, 서미스터, 포토레지스터 등)에 비례합니다. 그러나 아날로그 입력에는 0 ~ +5 V의 전압만 공급할 수 있다는 점을 기억해야 합니다. 센서의 출력 전압이 다른 범위에 있거나 음극인 경우 신호는 먼저 지정된 범위 내에 배치되어야 합니다. 간격. 아날로그 입력은 10kHz[2] 미만의 속도로 폴링되는데, 이는 빠르게 변화하는 일부 신호를 분석하는 데 충분하지 않을 수 있습니다.

아날로그 입력이 있으면 Arduino를 0~+5V의 DC 전압을 측정하고 측정 결과를 컴퓨터로 전송하는 간단한 디지털 전압계로 전환할 수 있습니다. 이렇게 하려면 표에 제공된 프로그램을 Arduino에 로드하면 됩니다. 2.

표 2

아두이노. 아날로그 I/O 작업, 오디오 작업

프로그램에서 참조 ADC 전압 Uref(밀리볼트 단위)와 ADC 출력 코드의 전압 Ku에 대한 변환 계수는 상수로 지정됩니다. 계수 값은 주어진 기준 전압을 1023으로 나누어 계산됩니다. 계수는 일반적으로 분수이므로 Ki 상수는 float(부동 소수점 수) 유형입니다. Uref 상수는 계수를 올바르게 계산하기 위해 동일한 유형을 갖습니다. 수식의 오른쪽에는 상수만 포함되어 있으므로 계수는 프로그램 실행 시 마이크로컨트롤러에 의해 계산되지 않고 번역 단계에서 컴파일러 자체에 의해 계산됩니다.

이 모든 기능을 사용하면 Arduino 보드의 Uref 핀에서 기준 전압의 정확한 값을 멀티미터로 측정하고 이를 프로그램에 기록하여 Uref 상수에 할당함으로써 전압계의 정확도를 높일 수 있습니다. [3, 4]에서 아날로그-디지털 변환의 정확도를 향상시키는 다른 방법을 읽을 수 있습니다.

해당 프로그램이 실행되면 보드의 TX LED가 깜박이면서 직렬 포트를 통해 정보가 전송되고 있음을 나타냅니다. 컴퓨터가 아무 것도 보내지 않기 때문에 RX LED가 켜지지 않습니다. 내장된 Arduino IDE 터미널에는 수신된 정보(그림 2), 즉 3332 갈바닉 배터리의 전압 측정 결과가 표시됩니다.

아두이노. 아날로그 I/O 작업, 오디오 작업
쌀. 2. 프로그램 창

Arduino는 빛뿐만 아니라 소리 신호도 제공할 수 있습니다. 이렇게 하려면 ZP-1과 같은 압전 사운드 이미터를 해당 출력 중 하나에 연결해야 합니다(그림 3).

아두이노. 아날로그 I/O 작업, 오디오 작업
쌀. 3. 피에조 사운드 이미터 연결하기

사운드 작업을 위해 특수 기능이 제공됩니다: 톤(N, F, T), 여기서 N은 직사각형 펄스가 생성되는 핀 번호입니다. F - 소리 주파수, Hz; T - 사운드 지속 시간(ms) 마지막 매개변수는 선택사항입니다. 그것이 없으면 소리는 계속됩니다. 이를 끄기 위해 noTone(N) 기능이 제공됩니다.

물론, 압전세라믹 사운드 이미터는 고품질 재생 장치라고 할 수 없으며 마이크로 컨트롤러에서 생성된 신호는 직사각형 모양이지만 이러한 기능을 사용하면 간단한 멜로디를 재생할 수 있습니다. 표에 예가 나와 있습니다. 3. Arduino IDE에 포함된 02.Digital oneMelody 프로그램 예제를 약간 수정한 것입니다. 멜로디의 각 음표의 빈도를 수동으로 설정하는 것은 불편하기 때문에 #include 지시어를 사용하여 프로그램 헤더에itches.h 파일이 첨부됩니다. 이 작업은 프로그램에 이 파일의 전체 텍스트를 포함하는 것과 같습니다. 이 경우 연주할 수 있는 음표 이름과 주파수 목록이 포함되어 있습니다.

표 3

아두이노. 아날로그 I/O 작업, 오디오 작업

사운드 이미터는 출력 D8에 연결해야 합니다.

프로그램의 경우 멜로디는 동일한 유형(주파수 값)의 일련의 상수이며, 이는 동일한 유형의 요소 번호가 매겨진 목록인 배열로 편리하게 결합됩니다. 배열을 선언할 때 배열의 모든 요소를 ​​나열하거나 총 개수를 표시해야 합니다. 배열 요소의 번호는 항상 XNUMX부터 시작됩니다.

고려 중인 예에서는 두 개의 배열이 사용됩니다. int melody[]에는 멜로디 음표의 이름이 포함되어 있고, int note Durations[]는 밀리초 단위의 지속 시간입니다. 배열 요소를 참조하려면 대괄호 안에 일련번호를 붙여 이름을 표시합니다. 멜로디의 음표 수를 쉽게 변경할 수 있도록 마이크로컨트롤러 메모리에서 해당 인수(변수 또는 배열)가 차지하는 바이트 수를 반환하는 sizeof(V) 함수를 사용하여 계산됩니다. 이 경우 멜로디 배열은 16바이트를 차지하고 int 요소의 길이는 8바이트입니다. 따라서 Note 변수는 값 XNUMX을 받으며 이는 for 루프의 본문이 하나씩 음을 연주하면서 반복되는 횟수입니다.

melody[] 배열에 두 개 이상의 음표를 추가하면 그에 따라 음표 값이 변경됩니다. 이 노트의 지속 시간과 함께 noteDurations[] 배열을 추가하는 것을 기억하면 됩니다.

멜로디는 한 번만 실행되므로 필요한 모든 작업은 setup() 함수 내부에 배치됩니다.

다시 실행하려면 Arduino 보드에 있는 RESET 버튼을 눌러 마이크로컨트롤러를 원래 상태로 재설정해야 합니다.

기사에서 논의된 Arduino용 프로그램은 ftp://ftp.radio.ru/pub/2016/09/aninout.zip에서 다운로드할 수 있습니다.

문학

  1. Lekomtsev D. Arduino. 디지털 입력/출력 작업. - 라디오, 2016, No. 8, p. 51-54.
  2. Arduino를 사용한 아날로그 측정. - URL: robotosha.ru/arduino/analog-measurements-arduino.html.
  3. Arduino 언어 참조. 아날로그 I/O - AnalogReference(). - URL: arduino.cc/en/Reference/AnalogReference.
  4. AnalogReference() 함수입니다. - URL: arduino.ru/Reference/AnalogReference.

저자: D. Lekomtsev

다른 기사 보기 섹션 라디오 아마추어 디자이너.

읽고 쓰기 유용한 이 기사에 대한 의견.

<< 뒤로

과학 기술의 최신 뉴스, 새로운 전자 제품:

광신호를 제어하고 조작하는 새로운 방법 05.05.2024

현대 과학 기술 세계는 빠르게 발전하고 있으며 매일 다양한 분야에서 우리에게 새로운 전망을 열어주는 새로운 방법과 기술이 등장하고 있습니다. 그러한 혁신 중 하나는 독일 과학자들이 광학 신호를 제어하는 ​​새로운 방법을 개발한 것이며, 이는 포토닉스 분야에서 상당한 발전을 가져올 수 있습니다. 최근 연구를 통해 독일 과학자들은 용융 실리카 도파관 내부에 조정 가능한 파장판을 만들 수 있었습니다. 이 방법은 액정층을 이용하여 도파관을 통과하는 빛의 편광을 효과적으로 변화시킬 수 있는 방법이다. 이 기술적 혁신은 대용량 데이터를 처리할 수 있는 작고 효율적인 광소자 개발에 대한 새로운 전망을 열어줍니다. 새로운 방법에 의해 제공되는 전기광학적인 편광 제어는 새로운 종류의 통합 광소자에 대한 기초를 제공할 수 있습니다. 이는 다음과 같은 사람들에게 큰 기회를 열어줍니다. ...>>

프리미엄 세네카 키보드 05.05.2024

키보드는 일상적인 컴퓨터 작업에서 없어서는 안될 부분입니다. 그러나 사용자가 직면하는 주요 문제 중 하나는 특히 프리미엄 모델의 경우 소음입니다. 그러나 Norbauer & Co의 새로운 Seneca 키보드를 사용하면 상황이 바뀔 수 있습니다. Seneca는 단순한 키보드가 아니라 완벽한 장치를 만들기 위한 5년간의 개발 작업의 결과입니다. 음향 특성부터 기계적 특성까지 이 키보드의 모든 측면은 신중하게 고려되고 균형을 이루었습니다. Seneca의 주요 기능 중 하나는 많은 키보드에서 흔히 발생하는 소음 문제를 해결하는 조용한 안정 장치입니다. 또한 키보드는 다양한 키 너비를 지원하여 모든 사용자에게 편리하게 사용할 수 있습니다. 세네카는 아직 구매가 불가능하지만 늦여름 출시 예정이다. Norbauer & Co의 Seneca는 키보드 디자인의 새로운 표준을 제시합니다. 그녀의 ...>>

세계 최고 높이 천문대 개관 04.05.2024

우주와 그 신비를 탐험하는 것은 전 세계 천문학자들의 관심을 끄는 과제입니다. 도시의 빛 공해에서 멀리 떨어진 높은 산의 신선한 공기 속에서 별과 행성은 자신의 비밀을 더욱 선명하게 드러냅니다. 세계 최고 높이의 천문대인 도쿄대학 아타카마 천문대가 개관하면서 천문학 역사의 새로운 페이지가 열렸습니다. 해발 5640m 고도에 위치한 아타카마 천문대는 우주 연구에서 천문학자들에게 새로운 기회를 열어줍니다. 이 장소는 지상 망원경의 가장 높은 위치가 되었으며, 연구자에게 우주의 적외선을 연구하기 위한 독특한 도구를 제공합니다. 고도가 높아서 하늘이 더 맑고 대기의 간섭이 적지만, 높은 산에 천문대를 짓는 것은 엄청난 어려움과 도전을 안겨줍니다. 그러나 어려움에도 불구하고 새로운 천문대는 천문학자들에게 연구에 대한 광범위한 전망을 열어줍니다. ...>>

아카이브의 무작위 뉴스

오디세우스는 이타카에 살지 않았다 09.03.2006

지난 XNUMX년 동안 오디세우스의 정확한 출생지인 이타카의 위치는 수수께끼로 남아 있었습니다.

그 이름을 가진 그리스 섬이 있지만 그 특징 중 어느 것도 호머의 설명과 일치하지 않습니다. 이로 인해 많은 역사가들은 오디세우스의 집으로 돌아가는 이야기가 모두 시적 허구라고 믿게 되었습니다.

그런데 최근 호머의 작품을 좋아하는 영국인 사업가 로버트 비틀스톤이 그가 믿는 대로 오디세우스의 궁전이 있던 곳을 발견했다. 이 표시에 사용된 비틀스톤은 오디세이뿐만 아니라 지리, 고고학 데이터 및 위성 사진에서도 볼 수 있습니다.

아마추어 고고학자에 따르면, 궁전은 팔리키 마을 근처의 현대 이타카에서 가장 가까운 케팔로니아 섬의 서쪽 해안에 있었습니다. 이 케팔로니아 조각은 한때 독립된 섬이었지만, 대지진 이후 케팔로니아와 섬을 가르는 좁은 해협이 메워졌다.

다른 흥미로운 소식:

▪ 무한 배터리 충전을 위한 나노전기 연료

▪ 로봇청소기 삼성 POWERbot VR7000

▪ 아마존 킨들 DX 전자책

▪ 스트레스는 위험하지 않지만 그에 대한 반응

▪ 단어와 그 감정적 색채

과학 기술 뉴스 피드, 새로운 전자 제품

 

무료 기술 라이브러리의 흥미로운 자료:

▪ 사이트 섹션 개인 교통수단: 육상, 해상, 항공. 기사 선택

▪ 기사 비디오 촬영의 구성 요소로서의 조명. 비디오 아트

▪ 기사 거의 모든 주민들이 같은 집에 사는 도시는 어디입니까? 자세한 답변

▪ 기사 올가미를 조입니다. 관광 팁

▪ 기사 EPU ARKTUR-006-STEREO용 증폭기 보정기. 무선 전자 및 전기 공학 백과사전

▪ 기사 전계 효과 트랜지스터 KP150 - KP640. 무선 전자 및 전기 공학 백과사전

이 기사에 대한 의견을 남겨주세요:

이름 :


이메일(선택사항):


댓글 :





이 페이지의 모든 언어

홈페이지 | 도서관 | 조항 | 사이트 맵 | 사이트 리뷰

www.diagram.com.ua

www.diagram.com.ua
2000-2024