Arduino PWM 신호 발생기 회로

문제를 제거하기 위해 도구를 사용해보십시오





이 포스트에서 우리는 아두 이노 기반 PWM 신호 발생기 회로를 만드는 방법을 정교하게 연구합니다.이 회로는 원하는 듀티 사이클 비율로 전위차계 또는 포트로 설정하거나 조정할 수 있습니다.

으로안킷 네기



PWM이란 무엇입니까?

이름 자체에서 알 수 있듯이 pwm 또는 펄스 폭 변조는 펄스 폭의 변조, 즉 주어진 시간 동안 펄스가 높거나 낮은 시간입니다. 이것은 펄스의 듀티 사이클을 변경하여 듀티 사이클이 전체 시간 주기로 나눈 시간에 따라 결국 펄스의 평균 값을 결정합니다.

그리고 주파수는 PWM에서 매우 중요한 역할을하며 안정적인 출력을 생성 할 수있을만큼 충분히 높아야합니다.



Pwm은 저전압에서 작동하는 장치를 구동하거나 SMPS와 같은 스위칭 목적과 같은 다양한 목적으로 수행됩니다.

ARDUINO UNO를 사용한 PWM

또한 pwm은 프로그램에 단 한 줄의 코드 만 추가하여 수행 할 수 있으므로 arduino를 가장 간단한 개발 보드로 만드는 요소 중 하나입니다. pwm 용 arduino UNO에는 별도의 디지털 핀이 있습니다. 즉, 이러한 핀이 pwm 출력을 제공 할 수 있습니다.

arduino UNO에는 14 개의 디지털 핀 중 3, 5, 6,9,10 및 11 개의 총 6 개의 pwm 핀이 있습니다. pwm 핀의 수는 arduino 보드 유형에 따라 다릅니다.

이제 arduino에서 pwm을 수행 할 수있는 두 가지 방법이 있습니다.

1. 아날로그 값을 0에서 255 사이의 pwm 핀에 직접 할당합니다.

arduino의 디지털 핀은 최대 5v를 제공 할 수 있으므로 0 아날로그 값은 0V와 같고 255는 5V와 같습니다.

이 작업을 수행하려면 다음 코드를 프로그램에 추가하면됩니다.

analogWrite (PWM 핀 번호, 0에서 255 사이의 값)

예 : analogWrite (10,64) // 64 개의 아날로그 값을 pwm 핀 10 번에 씁니다.

이제 이것은 다음을 의미합니다 : (5/255) * 64V = 1.25V, 즉 25 % 듀티 사이클.

2. arduino의 아날로그 핀에서받은 입력에 따라 값을 할당합니다.
IR 센서 또는 전위차계와 같은 구성 요소에서 입력을 가져올 수 있습니다.

arduino는 0에서 5V에 해당하는 0에서 1023 사이의 값으로 아날로그 입력을 수신합니다. 따라서 핀에서 pwm을 수행하려면이 입력 값을 0에서 255 사이의 숫자로 변환해야합니다.이를 arduino 언어로 매핑이라고합니다.

이에 대한 간단한 코드가 있습니다.

y = map (x, 0,1023 : 0,255) // 여기서 x는 입력 변수입니다.

그런 다음 다음을 사용하여 핀에서 pwm을 수행 할 수 있습니다.

analogWrite (PWM 핀 번호, y) // 수신 된 매핑 된 값을 핀 10에 기록

PWM 예 :

이 예제를 통해 두 가지 기술을 모두 배울 것입니다. 이를 위해서는 다음이 필요합니다.

1. 전위차계
2. 2 개의 led
3. 100 옴 저항기 2 개

회로도에 표시된대로 연결합니다.

회로도 :

암호:

int x// initialise variables
int y
void setup() {
pinMode(10,OUTPUT)//initialise pin 10 as output
pinMode(9,OUTPUT)//initialise pin 9 as output
pinMode(A0,INPUT)//initialise pin A0 as input from pot.
// put your setup code here, to run once:
}
void loop() {
analogWrite(9,125)// directly assigning value to pin 9 i.e. case1
x=analogRead(A0)// read values from potentiometer in terms of voltage
y= map(x,0,1023,0,255)// map those values from 0 to 255 // put your main code here, to run repeatedly:
analogWrite(10,y)// assigning value based on input from pot at pin A0 i.e. case 2
}

작동 원리

제안 된 Arduino PWM 신호 발생기 프로젝트의 기본 작업은 다음 단락에서 연구 할 수 있습니다.

핀 번호 9는 임의의 PWM 값을 할당 할 수 있지만 핀 번호는 10은 접지에 대한 전위차계의 위치에 따라 pwm 값을 제공합니다. 핀 9에 대해이 임의 값을 계속 변경하고 전위차계를 회전하여 두 핀에서 서로 다른 PWM 출력을 확인합니다.




이전 : Arduino를 사용한 고전류 모터 제어 회로 다음 : 2.4GHz 10 채널 원격 제어 스위치