🤖Have you ever tried Chat.M5Stack.com before asking??😎
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Register
  • Login
M5Stack Community
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Register
  • Login

[Solved]How to use the angle sensor?

Units
4
24
86.8k
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • K
    ken57093 @ajb2k3
    last edited by Oct 3, 2018, 7:43 AM

    @ajb2k3
    Thank you.
    Do you mean changing "#define ROTARY_ANGLE_SENSOR 22" to "#define ROTARY_ANGLE_SENSOR 21"?

    I changed 22 to 21 but there is no difference except digitalread() of 21 is always 1.

    A 1 Reply Last reply Oct 3, 2018, 10:26 AM Reply Quote 0
    • A
      ajb2k3 @ken57093
      last edited by ajb2k3 Oct 4, 2018, 1:37 AM Oct 3, 2018, 10:26 AM

      @ken57093 gpio22 in NOT on pin 22 gpio is on pin 49 according to the datasheet

      Opps there are only 48 pins. the define should be 39!

      #define ROTARY_ANGLE_SENSOR 39

      UIFlow, so easy an adult can learn it!
      If I don't know it, be patient!
      I've ether not learned it or am too drunk to remember it!
      Author of the WIP UIFlow Handbook!
      M5Black, Go, Stick, Core2, and so much more it cant be fit in here!

      K 1 Reply Last reply Oct 4, 2018, 1:26 AM Reply Quote 0
      • K
        ken57093 @ajb2k3
        last edited by ken57093 Oct 4, 2018, 9:28 AM Oct 4, 2018, 1:26 AM

        @ajb2k3
        Thank you.

        I had tried. There is no change when i steer the sensor, but the value will sometime auto change itself.

        0_1538616378269_a7f8a7a8-1392-43b3-900e-6c3c292aed61-image.png

        A 1 Reply Last reply Oct 4, 2018, 8:21 AM Reply Quote 0
        • A
          ajb2k3 @ken57093
          last edited by ajb2k3 Oct 4, 2018, 4:22 PM Oct 4, 2018, 8:21 AM

          @ken57093 , sorry, will try setting up a test rig and test.
          Haybin said to try 36!

          UIFlow, so easy an adult can learn it!
          If I don't know it, be patient!
          I've ether not learned it or am too drunk to remember it!
          Author of the WIP UIFlow Handbook!
          M5Black, Go, Stick, Core2, and so much more it cant be fit in here!

          K 1 Reply Last reply Oct 4, 2018, 8:57 AM Reply Quote 0
          • K
            ken57093 @ajb2k3
            last edited by Oct 4, 2018, 8:57 AM

            @ajb2k3

            I had tried before. The output of 36 is similar to 39.

            A 1 Reply Last reply Oct 4, 2018, 6:40 PM Reply Quote 0
            • A
              ajb2k3 @ken57093
              last edited by ajb2k3 Oct 5, 2018, 3:45 AM Oct 4, 2018, 6:40 PM

              @ken57093 在 How to use the angle sensor? 中说:

              Ok, set up my test rig and getting the same results.
              This is my code and I think something is missing.

              #include <M5Stack.h>
              /macro definitions of Rotary angle sensor and LED pin/
              #define ROTARY_ANGLE_SENSOR 36
              #define LED 3 //the Grove - LED is connected to PWM pin D3 of Arduino
              #define ADC_REF 3.3 //reference voltage of ADC is 5v.If the Vcc switch on the seeeduino
              //board switches to 3V3, the ADC_REF should be 3.3
              #define GROVE_VCC 3.3 //VCC of the grove interface is normally 5v
              #define FULL_ANGLE 180 //full value of the rotary angle is 300 degrees
              void setup()
              {
              M5.begin();
              Serial.begin(9600);
              pinMode(ROTARY_ANGLE_SENSOR, INPUT);
              pinMode(LED,OUTPUT);
              }
              void loop()
              {
              float voltage;
              int sensor_value = analogRead(ROTARY_ANGLE_SENSOR);
              voltage = (float)sensor_valueADC_REF/1023;
              float degrees = (voltage
              FULL_ANGLE)/GROVE_VCC;
              Serial.println("The angle between the mark and the starting position:");
              Serial.println(degrees);
              }

              UIFlow, so easy an adult can learn it!
              If I don't know it, be patient!
              I've ether not learned it or am too drunk to remember it!
              Author of the WIP UIFlow Handbook!
              M5Black, Go, Stick, Core2, and so much more it cant be fit in here!

              1 Reply Last reply Reply Quote 0
              • A
                ajb2k3
                last edited by Oct 4, 2018, 7:46 PM

                OK analogue read does not work, the command is something like ADC1 get raw (or some such)

                UIFlow, so easy an adult can learn it!
                If I don't know it, be patient!
                I've ether not learned it or am too drunk to remember it!
                Author of the WIP UIFlow Handbook!
                M5Black, Go, Stick, Core2, and so much more it cant be fit in here!

                1 Reply Last reply Reply Quote 0
                • L
                  lukasmaximus
                  last edited by Oct 8, 2018, 3:59 AM

                  I can get a readout from the angle sensor on both the serial console and lcd with this sketch. Try it out and see if it works for you. I'm using the m5go but the pinout should be the same. Make sure you connect the black wire to gnd, the red wire to 5v and the white wire to 36

                  <code>

                  #include <M5Stack.h>

                  void setup()
                  {
                  M5.begin();
                  M5.Lcd.setBrightness(30);
                  M5.Lcd.clear();

                  }

                  void loop()
                  {
                  M5.Lcd.setCursor(160, 120);
                  int adc = analogRead(36);
                  M5.Lcd.println(adc);
                  Serial.println(adc);
                  delay(2);
                  }
                  </code>

                  A 1 Reply Last reply Oct 8, 2018, 7:19 PM Reply Quote 0
                  • K
                    ken57093
                    last edited by Oct 8, 2018, 10:04 AM

                    @lukasmaximus

                    Thank you. But i just have this wire and I use your code still unsuccess.
                    http://forum.m5stack.com/assets/uploads/files/1538465243067-20181002_152122-resized.jpg

                    1 Reply Last reply Reply Quote 0
                    • A
                      ajb2k3 @lukasmaximus
                      last edited by Oct 8, 2018, 7:19 PM

                      @lukasmaximus 在 How to use the angle sensor? 中说:

                      I can get a readout from the angle sensor on both the serial console and lcd with this sketch. Try it out and see if it works for you. I'm using the m5go but the pinout should be the same. Make sure you connect the black wire to gnd, the red wire to 5v and the white wire to 36

                      <code>

                      #include <M5Stack.h>

                      void setup()
                      {
                      M5.begin();
                      M5.Lcd.setBrightness(30);
                      M5.Lcd.clear();

                      }

                      void loop()
                      {
                      M5.Lcd.setCursor(160, 120);
                      int adc = analogRead(36);
                      M5.Lcd.println(adc);
                      Serial.println(adc);
                      delay(2);
                      }
                      </code>

                      My self and Ken are using the grove port which is pin 22&23 and so can't move it over to a different port.
                      @ken57093 - I haven't forgotten about you my friend, I just been busy trying to finish some of my backlog of projects which the M5Stack is proving to be very usefull for.

                      UIFlow, so easy an adult can learn it!
                      If I don't know it, be patient!
                      I've ether not learned it or am too drunk to remember it!
                      Author of the WIP UIFlow Handbook!
                      M5Black, Go, Stick, Core2, and so much more it cant be fit in here!

                      K 1 Reply Last reply Oct 9, 2018, 1:23 AM Reply Quote 0
                      • K
                        ken57093 @ajb2k3
                        last edited by ken57093 Oct 9, 2018, 11:02 AM Oct 9, 2018, 1:23 AM

                        @ajb2k3
                        Haha, it's fine. I almost give up trying the angle sensor myself. Now I'm trying to use the SIM800L GSM module.

                        1 Reply Last reply Reply Quote 0
                        • L
                          lukasmaximus
                          last edited by Oct 9, 2018, 2:44 AM

                          My apologies guys, I presumed you were using the m5go or fire as I am. If you are using the gray or black core models you will need to use jumper cables to attach the angle sensor to the pins on the bottom of the core as shown in this picture. it is not possible to connect the angle sensor to 22 or 23 as they are digital inputs, for the angle sensor we need an analog input or ADC (analog to digital converter) pin, so this is only possible on pins 35 and 36. try to connect as I show in these pictures and try again, it should display the numbers on both the serial monitor and the screen.![](http://imagehosting.biz/image/6ut
                          http://imagehosting.biz/image/6u0)

                          K 1 Reply Last reply Oct 9, 2018, 3:03 AM Reply Quote 1
                          • K
                            ken57093 @lukasmaximus
                            last edited by Oct 9, 2018, 3:03 AM

                            @lukasmaximus

                            Thank you. I will try it again after buying the wire

                            1 Reply Last reply Reply Quote 0
                            21 out of 24
                            • First post
                              21/24
                              Last post