M5stickC로 시작하는 얇은 마초 계획 💪

만나서 반가워요! 기사를 방문해 주셔서 감사합니다.
절반 NEET와 같은 프리랜서 엔지니어의 타츠노부라고 합니다.
이번에는 M5stickC로 시작하는 얇은 마초 계획 💪이라는 제목으로 M5StickC를 사용하여
다리 기계와 에어로 자전거의 횟수를 시각화하는 기사입니다. 꼭 끝까지 읽어 주시면 다행입니다! !

소개



이전 기사( M5stickC로 시작하는 근육 무김키 계획 💪 )에서는, 복근 원더 코어라고 하는 복근 머신의 트레이닝 횟수를 가시화시켰습니다.
이번에는 드디어 집에 있는 다리 머신과 에어로 자전거도 횟수를 가시화시키고 싶은 기사를 쓰는 데 이르렀습니다.

준비하는 것


  • 렌탈 서버
  • PC: WindowsPC
  • M5StickC 본체/부속 USBType-C 케이블/부속 팔찌×2
  • 100균(세리아)에서 구입한 LED 자동 점등 라이트×2⇒이것에 들어 있는 마그넷 스위치를 이용

  • 저항 10kΩ
  • 다리 기계
  • 에어로 자전거

  • 시스템 구성도/M5stickC에 쓰기 준비



    마지막 기사( M5stickC로 시작하는 근육 무김키 계획 💪 )를 참조하십시오!

    회로 연결



    자석 스위치 중 하나를 GND로
    마그넷 스위치의 다른 쪽을 3.3V 풀업 저항시켜 36핀에

    다리 트레이닝 및 에어로 자전거 횟수 서버에 POST하는 펌웨어



    ⇒URL은 레그 머신용과 에어로 오토바이용으로 나누어 주세요.
    ⇒실제의 가시화 화면과 서버측의 기본 로직은 마지막 기사 마찬가지이므로 생략합니다.

    post.ino
    #include <WiFi.h>
    #include <HTTPClient.h>
    #include <M5StickC.h>
    const char* ssid = "yourssid";
    const char* password =  "yourpass";
    const char* url = "https://hogehoge.jp/legtrain.php";
    const int swpin=36;
    int swdata;
    int swold;
    bool sensorflgresult = false;
    void setup() {
      M5.begin();
      M5.Lcd.setCursor(0, 0, 1);
      M5.Lcd.print("legtrain");
      // put your setup code here, to run once:
      Serial.begin(115200);
      pinMode(swpin,INPUT);
      //gpio_set_pull_mode( GPIO_NUM_36, GPIO_PULLDOWN_ONLY);
      delay(4000);   //Delay needed before calling the WiFi.begin
    
      WiFi.begin(ssid, password); 
    
      while (WiFi.status() != WL_CONNECTED) { //Check for the connection
        delay(1000);
        Serial.println("Connecting to WiFi..");
      }
    
      Serial.println("Connected to the WiFi network");
    }
    void svrPost(){
      if(WiFi.status()== WL_CONNECTED){   //Check WiFi connection status     
               HTTPClient http;   
               http.begin(URL);  //Specify destination for HTTP request
               http.addHeader("Content-Type", "text/plain");             //Specify content-type header
               int httpResponseCode = http.POST("{ \"data\": \"" + String("leg_earo") + "\"}");   //Send the actual POST request
               if(httpResponseCode>0){
                  String response = http.getString();                       //Get the response to the request
                  Serial.println(httpResponseCode);   //Print return code
                  Serial.println(response);           //Print request answer
               }else{
                  Serial.print("Error on sending POST: ");
                  Serial.println(httpResponseCode);
               }
               http.end();  //Free resources
           }else{
               Serial.println("Error in WiFi connection");   
           }
    }
    void loop() {
      // put your main code here, to run repeatedly:
      swdata= !analogRead(swpin);
      if(swdata==0){
          if(swold==1){
           Serial.println(1);
           svrPost();
          }else{
            //Serial.println(0);
          }
      }else{
        //Serial.println(0);
      }
      swold = swdata;
      M5.update();
      delay(500);
    }
    

    마그넷 스위치를 레그 머신에 설치한 모습






    자석 스위치를 에어로 자전거에 설치 한 모습





    시각화 화면



    ⇒이런 느낌으로 복근+다리 트레이+에어로 오토바이의 횟수를 가시화할 수 있었습니다! !


    마지막으로



    복근 횟수를 시각화하는 것도 재미 있지만, 모처럼이므로 근육 트레이닝을 유지하기 위해서도
    정기 시간이 되면 하루의 트레이닝 횟수를 집계 트윗 해 주도록 했습니다! !
    매일 저녁 6시에 자동 트윗됩니다 ()


    이를 통해 자신의 훈련 상황을 매일 확인하기 쉬워졌습니다.
    나중에 트윗되기 때문에 녹슬기가 어렵습니다 🤔

    여러분도, 집에 트레이닝 머신 등 가지고 계시면 꼭 IoT화시켜 보세요.
    모두 재미 + 자신의 훈련 관리도 될거야 👍
    그럼 ✋

    좋은 웹페이지 즐겨찾기