Search icon
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletters
Free Learning
Arrow right icon
Learn Robotics Programming - Second Edition

You're reading from  Learn Robotics Programming - Second Edition

Product type Book
Published in Feb 2021
Publisher Packt
ISBN-13 9781839218804
Pages 602 pages
Edition 2nd Edition
Languages
Concepts
Author (1):
Danny Staple Danny Staple
Profile icon Danny Staple

Table of Contents (25) Chapters

Preface Section 1: The Basics – Preparing for Robotics
Chapter 1: Introduction to Robotics Chapter 2: Exploring Robot Building Blocks – Code and Electronics Chapter 3: Exploring the Raspberry Pi Chapter 4: Preparing a Headless Raspberry Pi for a Robot Chapter 5: Backing Up the Code with Git and SD Card Copies Section 2: Building an Autonomous Robot – Connecting Sensors and Motors to a Raspberry Pi
Chapter 6: Building Robot Basics – Wheels, Power, and Wiring Chapter 7: Drive and Turn – Moving Motors with Python Chapter 8: Programming Distance Sensors with Python Chapter 9: Programming RGB Strips in Python Chapter 10: Using Python to Control Servo Motors Chapter 11: Programming Encoders with Python Chapter 12: IMU Programming with Python Section 3: Hearing and Seeing – Giving a Robot Intelligent Sensors
Chapter 13: Robot Vision – Using a Pi Camera and OpenCV Chapter 14: Line-Following with a Camera in Python Chapter 15: Voice Communication with a Robot Using Mycroft Chapter 16: Diving Deeper with the IMU Chapter 17: Controlling the Robot with a Phone and Python Section 4: Taking Robotics Further
Chapter 18: Taking Your Robot Programming Skills Further Chapter 19: Planning Your Next Robot Project – Putting It All Together Other Books You May Enjoy

Getting a rough heading from the magnetometer

Now that we've got calibration settings, we can start using magnetometer readings to estimate where North is, like a compass. The words heading and yaw mean the same thing —which way we face relative to a reference point—in this case, magnetic North. Let's see how we can do this. Have a look at the following screenshot:

Figure 16.15 – Getting an approximate heading from the magnetometer

Figure 16.15 shows a method we will build. It takes the magnetometer with calibration data applied and uses atan2, as we did with the gyroscope to approximate the heading. We can also add a rough compass with it too.

Let's make this, as follows:

  1. Create a plot_mag_heading.py file. Start with the imports, as follows:
    import vpython as vp
    from robot_imu import RobotImu
    from delta_timer import DeltaTimer
    import imu_settings
  2. We can initialize the RobotImu with the settings, like this...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $15.99/month. Cancel anytime}