산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

Arduino TEA5767 FM 라디오 수신기

구성품 및 소모품

Arduino Micro
× 1
TEA5767 모듈
× 1
Arduino LCD 화면
× 1
회전 전위차계(일반)
10k 옴
× 1
LM386 오디오 증폭기
× 1
3W 스피커
× 1
브레드보드(일반)
× 1
오디오 케이블
× 1
점퍼 와이어(일반)
× 1
FM 송신기
× 1

앱 및 온라인 서비스

Arduino IoT 클라우드

이 프로젝트 정보

소개

친애하는 친구 환영! 이 튜토리얼에서는 간단한 브레드보드에 FM 라디오 수신기를 만들 것입니다. .

첨부된 동영상을 시청하여 몇 초 동안 들어보십시오. 보시다시피 라디오는 잘 작동하고 있으며 라디오에서 약간의 음악이 나오는 것을 들을 수 있습니다. 이 주파수에서 이 저렴한 FM 송신기를 사용하여 YouTube 안전 트랙을 전송하고 있습니다. 저는 Nokia 5110 LCD 디스플레이를 사용하여 선택한 주파수, 신호 강도 및 스테레오 사운드를 수신하는 경우 스테레오 아이콘을 표시합니다. 프로젝트의 핵심은 작고 저렴한 Arduino Nano입니다. . 이 전위차계를 사용하여 스피커의 볼륨을 제어할 수 있고 이 전위차계를 사용하여 무선 주파수를 변경할 수 있습니다.

그것은 매력적인 프로젝트이며 상대적으로 구축하기 쉽습니다. 만드는 방법을 살펴보겠습니다.

1단계:모든 부품 가져오기

이 프로젝트를 빌드하는 데 필요한 부품은 다음과 같습니다.

<울>
  • 아두이노 나노
  • <울>
  • FM 라디오 모듈
  • <울>
  • 노키아 5110 LCD
  • <울>
  • 10K 전위차계
  • <울>
  • 오디오 증폭기
  • <울>
  • 3W 스피커
  • <울>
  • 대형 브레드보드
  • <울>
  • 오디오 케이블
  • <울>
  • 점퍼 와이어
  • <울>
  • 3 in 1 전선
  • <울>
  • FM 송신기
  • <울>
  • 파워 뱅크
  • 프로젝트의 총 비용은 약 15$입니다.

    2단계:Nokia 5110 LCD

    Nokia 5110은 제가 Arduino 프로젝트에서 가장 좋아하는 디스플레이입니다.

    Nokia 5110은 원래 휴대폰 화면용으로 설계된 기본 그래픽 LCD 화면입니다. 저전력 CMOS LCD 컨트롤러/드라이버인 PCD8544 컨트롤러를 사용합니다. 이 때문에 디스플레이의 소비 전력이 인상적입니다.

    켜져 있을 때 0.4mA만 사용하지만 백라이트는 비활성화됩니다. 절전 모드일 때 0.06mA 미만을 사용합니다! 이것이 내가 이 디스플레이를 가장 좋아하는 이유 중 하나입니다. PCD8544는 직렬 버스 인터페이스를 통해 마이크로컨트롤러에 인터페이스합니다. 따라서 Arduino와 함께 화면을 매우 쉽게 사용할 수 있습니다. 8개의 전선만 연결하면 됩니다. Nokia 5110 LCD를 Arduino와 함께 사용하는 방법에 대한 자세한 자습서를 준비했습니다.

    이 튜토리얼에서 해당 비디오를 첨부했으며 디스플레이에 대한 유용한 정보를 제공하므로 주의 깊게 시청하는 것이 좋습니다. 디스플레이 비용은 약 $4입니다.

    여기에서 얻을 수 있습니다.

    3단계:TEA5767 FM 라디오 모듈

    이 프로젝트는 이 FM 라디오 모듈을 중심으로 구축되었습니다.

    모듈은 TEA5767 무선 칩을 사용합니다. , 여기. 이 칩은 I2C 인터페이스를 사용하므로 Arduino와 함께 사용하기 쉽습니다. 모듈에서 오디오 증폭기도 찾을 수 있습니다. 불행히도 이것은 헤드폰 증폭기이므로 오디오 신호가 매우 약하기 때문에 스피커를 모듈의 출력에 직접 연결할 수 없습니다. 먼저 증폭해야 합니다. 또한 모듈에서 나오는 볼륨을 소프트웨어로 제어할 수 있는 방법이 없으므로 나중에 전위차계를 사용할 것입니다. 모듈에는 두 개의 헤드폰 잭이 있으며 하나는 안테나용이고 다른 하나는 표준 헤드폰 출력입니다. 모듈은 작은 안테나와 함께 제공되지만 원하는 경우 쉽게 직접 만들 수 있습니다.

    여기에서 얻을 수 있습니다.

    4단계:부품 연결

    이제 이 개략도에 따라 회로를 구성해 보겠습니다.

    먼저 모든 부품을 브레드보드에 올려놓습니다. 볼륨을 제어할 전위차계를 제외한 모든 부품의 접지 핀을 브레드보드의 접지 레일에 연결하고 모든 부품의 Vcc 핀을 브레드보드의 양극 레일에 연결합니다. 이제 라디오 모듈을 연결해 보겠습니다. SLC 핀은 Arduino Nano의 아날로그 핀 5에 연결되고 SDA 핀은 아날로그 핀 4에 연결됩니다. 이제 전위차계의 중간 핀을 아날로그 핀 0에 연결합니다. 이 전위차계로 주파수를 선택하겠습니다.

    이제 볼륨을 제어하려면 볼륨 전위차계를 연결해야 합니다. 오디오 케이블을 사용했습니다. 케이블의 한쪽 끝을 모듈의 오디오 출력에 연결했습니다. 다음으로 다른 쪽 끝을 잘라 케이블 내부에 4개의 전선을 찾습니다. 모듈은 스테레오 사운드를 출력하지만 이번에는 하나의 오디오 채널만 사용할 것입니다. 그래서 전선 두 개만 연결합니다. 그 중 하나는 GND이고 다른 하나는 증폭해야 하는 오디오 신호입니다. 오디오 신호 와이어는 볼륨 전위차계의 입력 핀으로 연결됩니다. 전위차계의 중간 핀은 나오는 오디오 신호입니다.

    오디오 신호를 증폭하기 위해 LM386 증폭기 칩을 사용하는 이 모듈을 사용합니다. 오디오 신호는 이 핀으로 가고, 오디오 케이블의 접지 핀은 이 핀으로 갑니다. 이제 모듈에 전원을 공급하기만 하면 됩니다. 그래서 우리는 이 핀을 브레드보드의 양극 레일과 이 핀을 브레드보드의 음극 레일에 연결합니다. 이제 우리가 해야 할 일은 이렇게 작은 스피커를 모듈의 출력에 연결하는 것뿐입니다. 이 작은 전위차계로 신호 증폭을 제어할 수 있습니다. 이제 Nokia 5110 디스플레이를 연결하기만 하면 됩니다. Nokia 5110 디스플레이를 사용하는 방법에 대한 자세한 비디오를 시청하여 연결 방법을 확인하거나 회로도를 따르십시오.

    Nokia 5110 LCD 디스플레이 연결

    <울>
  • RST는 Arduino의 디지털 핀 12로 이동합니다.
  • <울>
  • CE는 Arduino의 디지털 핀 11로 이동합니다.
  • <울>
  • DC가 Arduino의 디지털 핀 10으로 연결됨
  • <울>
  • DIN은 Arduino의 디지털 핀 9로 연결됩니다.
  • <울>
  • CLK는 Arduino의 디지털 핀 8에 연결됩니다.
  • <울>
  • VCC는 Arduino 3.3V로
  • <울>
  • LIGHT가 Arduino GND로 이동합니다(백라이트 켜짐)
  • <울>
  • GND는 Arduino GND로 이동
  • 선택 사항인 마지막 단계는 330μF 커패시터를 이와 같이 브레드보드에 연결하여 오디오 신호의 노이즈를 줄이는 것입니다.

    이제 프로젝트의 전원을 켜면 스플래시 화면이 3초 동안 표시되고 그 후 스피커에서 소리가 들립니다. 이 스피커와 이 오디오 앰프의 음질은 최상이 아닙니다. 앰프가 내장된 다른 상업용 스피커를 사용하면 음질이 완벽합니다. 확인 해봐. 그래서 모듈의 출력 신호는 완벽하지만 내가 사용한 앰프와 스피커가 음질을 떨어뜨리므로 더 좋은 음질을 찾아야 한다. 하드웨어를 구축했으므로 이제 프로젝트의 소프트웨어 측면을 살펴보겠습니다.

    5단계:프로젝트 코드

    이 프로젝트에서는 두 개의 라이브러리를 사용합니다. Nokia5110 그래프 라이브러리와 TEA5767 FM 칩용 라이브러리를 사용하고 있습니다.

    코드는 다음과 같이 작동합니다. 먼저 라디오 모듈과 디스플레이를 초기화하고 3초 동안 스플래시 화면을 표시합니다. 이 시작 화면은 Photoshop에서 디자인했습니다. Nokia 5110 디스플레이에 그래픽을 업로드하는 방법을 알고 싶다면 제가 첨부한 비디오 튜토리얼을 시청하십시오.

    <사전><코드> 무효 setup() { radio.setMonoReception(); radio.setStereoNoiseCancellingOn(); 초기화면(); 쇼스플래시스크린(); Serial.begin(9600);}

    다음으로 루프 기능에서 주파수를 몇 밀리초마다 제어하는 ​​전위차계에서 값을 읽습니다. 전위차계에서 아날로그 값을 가져와 주파수 값에 매핑합니다. 아날로그 값을 읽기 때문에 이 값은 일정하지 않습니다. 전위차계를 돌리지 않아도 약간 오르락 내리락 합니다.

    frequencyInt =map(val, 2, 1014, 8700, 10700); //87.0MHz ~ 107.00MHz의 주파수에 대한 아날로그 값 float frequency =frequencyInt/100.0f; 

    따라서 안정적인 주파수를 달성하기 위해 주파수가 크게 변경된 경우에만 라디오를 다른 주파수로 조정합니다. 따라서 주파수에 상당한 변화가 있으면 라디오 모듈을 해당 주파수로 조정하고 신호 강도를 얻은 다음 화면에 인쇄하고 필요한 경우 스테레오 아이콘을 인쇄하고 마지막으로 선택한 주파수를 인쇄합니다. .

    if(주파수 - 이전주파수>=0.1f || 이전주파수 - 빈도>=0.1f) { lcd.clrScr(); radio.selectFrequency(주파수); printSignalStrength(); 인쇄 스테레오(); printFrequency(주파수); 이전주파수 =빈도; } 

    이것이 코드가 작동하는 방식입니다. 간단하지만 제대로 작동합니다. 항상 그렇듯이 이 단계에 첨부된 프로젝트 코드를 찾을 수 있습니다.

    이것은 개발 중인 프로젝트이므로 프로젝트 웹 페이지에서 최신 버전의 코드를 찾을 수 있습니다. http://educ8s.tv/arduino-fm-radio-project

    FMRadio.zip

    6단계:최종 생각

    약 30분 후에 볼 수 있듯이 브레드보드에 FM 라디오를 구축할 수 있습니다. 정말 멋지네요!

    우리가 이 프로젝트에서 얻는 음질은 아직 좋지 않습니다. 나는 모든 분야에서 그것을 개선하기 위해 이 프로젝트에 더 노력할 것입니다. 저는 이 프로젝트를 복고풍의 3D 인쇄 인클로저가 있는 완전한 라디오로 바꾸고 싶습니다. 우선 이 프로젝트에서 좋은 오디오 품질을 얻기 위해 다양한 오디오 증폭기와 스피커를 사용해 볼 것입니다. 또한 브레드보드에서 멀리 옮기고 프로토타이핑 보드에서 영구 버전을 만들 것입니다. 나는 또한 라디오처럼 보이도록 이 프로젝트의 인클로저를 디자인할 것입니다. 물론 프로젝트의 코드에도 많은 개선과 조정이 필요합니다. 추가하고 싶은 기능 중 하나는 음질을 더욱 향상시키는 미세 조정 기능입니다.

    프로젝트는 디스플레이의 백라이트가 비활성화된 경우 약 50mA의 전류가 필요합니다. 현재의 일부 소프트웨어 및 하드웨어 트릭을 추가로 줄여 이 프로젝트가 배터리 전원을 사용할 수 있도록 할 수 있습니다. 결과는 인상적일 거라고 생각합니다. 이 프로젝트가 제 책상에서 완성되는 것을 보고 싶어 견딜 수가 없습니다. 이 영상은 시작에 불과했습니다.

    이 프로젝트에 대한 귀하의 의견을 듣고 싶습니다. 이 프로젝트가 흥미롭습니까? 또한 어떤 개선 사항을 제안합니까? 이 프로젝트를 개선할 수 있는 경험에서 얻은 비법이 있습니까?

    아래 댓글 섹션에 의견을 게시하고 비디오를 좋아하고 흥미롭다면 친구들과 공유하는 것을 잊지 마십시오! 대단히 감사합니다!

    <섹션 클래스="섹션 컨테이너 섹션 축소 가능" id="코드">

    코드

    <울>
  • 코드 스니펫 #1
  • 코드 스니펫 #3
  • 코드 스니펫 #1일반 텍스트
    <사전> 무효 설정() { radio.setMonoReception(); radio.setStereoNoiseCancellingOn(); 초기화면(); 쇼스플래시스크린(); Serial.begin(9600);}
    코드 스니펫 #3일반 텍스트
    if(주파수 - 이전주파수>=0.1f || 이전주파수 - 빈도>=0.1f) { lcd.clrScr(); radio.selectFrequency(주파수); printSignalStrength(); 인쇄 스테레오(); printFrequency(주파수); 이전주파수 =빈도; }

    회로도


    제조공정

    1. Arduino 디지털 주사위
    2. Pi-Arduino 인터넷 라디오
    3. 아이언맨
    4. 나를 찾기
    5. Arduino 3D 인쇄 로봇 팔
    6. Arduino 가습기 제어
    7. Arduino 및 RDA8057M을 사용하는 FM 라디오
    8. NeoMatrix Arduino Pong
    9. Arduino 조이스틱
    10. 보수계(Arduino 101)