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

자동 및 수동 모드의 이중 축 태양광 추적기 패널

구성품 및 소모품

Arduino UNO
× 1
회전 전위차계(일반)
× 2
LED(일반)
× 2
SparkFun 푸시버튼 스위치 12mm
× 1
서보(타워 프로 MG996R)
× 2
포토 저항기
× 4
저항 10k 옴
× 5
저항 221옴
× 2

필요한 도구 및 기계

납땜 인두(일반)

앱 및 온라인 서비스

Autodesk Tinkercad
Arduino IDE

이 프로젝트 정보

이것은 2017-2018 이브닝 클럽 Young Hackers에서 제 학생들이 구현한 프로젝트입니다. 초등학생들에게는 힘든 프로젝트이고 달성하기까지 많은 회의가 필요했습니다. 그것은 태양으로부터 최대 전력을 수확하기 위해 두 축으로 회전할 수 있는 작은 5V 태양 전지판을 포함합니다. 이 프로젝트는 OpenSourceClassroom의 Dual Axis Solar Tracker 프로젝트를 기반으로 합니다.

우리는 최종 제품에서 두 가지 모드를 구현하고 싶었습니다.

<울>
  • 수동 모드 – 2개의 포트로 제어됩니다.
  • <울>
  • 자동 모드 – 4개의 광 센서로 제어됩니다.
  • 이를 달성하기 위해 푸시 버튼과 두 개의 표시등을 사용하여 모드 간에 변경하도록 장치를 프로그래밍했습니다. 장치가 수동 모드에 있을 때 빨간색 표시등이 켜지고 두 개의 전위차계를 사용하여 두 축에서 패널의 회전을 제어할 수 있습니다. 장치가 자동 모드에 있으면 파란색 표시등이 켜지고 4개의 LDR에서 수집된 빛에 따라 패널 회전이 결정됩니다. 프로그래밍은 tinkercad로 했습니다.

    학생들은 생산 라인 스타일로 그룹으로 작업하여 작업을 완료했습니다. (와이어 납땜, 와이어 절연, 부품 나사 고정 등).

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

    코드

    <울>
  • 회전하는 태양광 패널 코드
  • 회전하는 태양광 패널 코드Arduino
    이중 축 태양 전지판의 최종 코드
    #include //변수 초기화int 모드 =0; 정수 버튼 상태 =0; 정수 prevButtonState =0; 정수 topLeftLight =0; int topRightLight =0;int bottomLeftLight =0;int bottomRightLight =0;int LeftLight =0;int RightLight =0;int TopLight =0;int BottomLight =0;//두 개의 서보 선언Servo servo_9;Servo servo_10;void setup(){ 핀모드(7, 입력); //모드 버튼 pinMode(12, OUTPUT); //수동 모드용 LED 표시기 pinMode(11, OUTPUT); //자동 모드용 LED 표시기 pinMode(A0, INPUT); //좌우 이동 전위차계 pinMode(A1, INPUT); //위-아래 이동을 위한 전위차계 pinMode(A2, INPUT); //조도 센서 업 - 왼쪽 pinMode(A3, INPUT); //조도 센서 업 - 오른쪽 pinMode(A4, INPUT); //광센서 하단 - 왼쪽 pinMode(A5, INPUT); //광 센서 하단 - 오른쪽 서보_9.attach(9); //서보 모터 오른쪽 - 왼쪽 이동 서보_10.attach(10); //서보 모터 위아래 이동}void loop(){ buttonState =digitalRead(7); if (buttonState !=prevButtonState) { if (buttonState ==HIGH) { //모드를 변경하고 올바른 표시기를 켜십시오. if (mode ==1) { mode =0; 디지털 쓰기(12, 높음); 디지털 쓰기(11, 낮음); } 그렇지 않으면 { 모드 =1; 디지털 쓰기(11, 높음); 디지털 쓰기(12, 낮음); } } } prevButtonState =버튼 상태; 지연(50); // 50밀리초 동안 기다립니다. if (mode ==0) { //모드가 수동이면 냄비 값을 회전 각도로 매핑합니다.servo_9.write(map(analogRead(A0), 0, 1023, 0, 180) ); 서보_10.write(map(analogRead(A1), 0, 1023, 0, 180)); } else { //모드가 자동으로 센서 값을 0-100 광도에 매핑하는 경우. //모든 광 센서는 감도가 다르므로 먼저 테스트해야 합니다. //높은 값과 낮은 값에 대해 topLeftLight =map(analogRead(A2),50,980,0,100); topRightLight =지도(analogRead(A3),200,990,0,100); bottomLeftLight =지도(analogRead(A4),170,970,0,100); bottomRightLight =지도(analogRead(A5),250,1000,0,100); //평균 조명 조건 계산 TopLight =((topRightLight + topLeftLight) / 2); BottomLight =((bottomRightLight + bottomLeftLight) / 2); LeftLight =((topLeftLight + bottomLeftLight) / 2); RightLight =((topRightLight + bottomRightLight) / 2); //필요한 경우 서보 회전 if (abs((RightLight - LeftLight))> 4) { //빛 차이가 4%보다 큰 경우에만 위치 변경 if (RightLight  LeftLight) { if (servo_9.read()> 0) { servo_9.write((servo_9.read() - 1)); } } } if (abs((TopLight - BottomLight))> 4) { //조명 차이가 4% 이상인 경우에만 위치 변경 if (TopLight  BottomLight) { if (servo_10.read()> 0) { servo_10.write((servo_10.read() + 1)); } } } }}

    회로도

    배선도

    제조공정

    1. DHT11 센서(LED 및 피에조 스피커 포함)
    2. Arduino를 사용한 간단한 장애물 센서
    3. 솔라 트래커 V2.0
    4. 사물 인터넷(IoT) 기반 태양열 추적기
    5. 4x4x4 LED 큐브(Arduino Uno 및 1쉴드 포함
    6. 새롭고 더 빠른 알고리즘이 포함된 Arduino 기반 RPM 카운터
    7. 구리로 전기도금
    8. Arduino로 태양 복사열 측정
    9. 서보 제어, 광추적 태양광 패널 플랫폼
    10. 태양광 패널:품질 문제 및 핵심 관리 포인트