Skip to content

Embedded Software Fundamentals #2

@JuanR-Git

Description

@JuanR-Git

Introduction

This will be the first general research task for the embedded software team. It will introduce the members to the following:

  • hardware we will be using for this years suit
  • communication protocols for data acquisition and commands
  • firmware development
  • system integration in C++.

Goal

All members get a strong foundational understanding of how we are going to design the embedded software system for the exoskeleton suit.

Topics to Research

  • IMUs
    • Noise filtering IMU data
    • Sensor Fusion
    • Communication using I2C
      • Can lookin to SPI for future improvements but likely won't be used in this years design.
    • Data Visualization tools/strategies (ROS2 RViz2, etc.)
  • Motors
    • Datasheet for this year's motors
    • Motor control parameters
    • Communication for sending commands and receiving encoder position readings (Canbus
  • C/C++ development & Embedded programming
    • Linux / Raspberry Pi development
    • Research into an IDE that we can use for programming and debugging on STM32 Boards (Ex: Keil studio, Arduino IDE, etc.)

Deliverables

There is a lot to digest here so there will be no hard deadline for this research task. The suggested approach to learning is as follows:

  • Take a little bit of time each day to review supplementary material and do additional Independent research
  • Fill out your own research tab in the respective documents as you go (IMU research, Motor Research, etc.). This will act as your cheat sheet and will give us a good pool of information to base our design off of.
  • Reach out to senior members for additional guidance to fill in gaps in understanding.

NOTE: In the following weeks it will be important that everyone has a firm understanding of the following topics so please try to organize yourself so you can dedicate enough time to learning to basics.

Metadata

Metadata

Labels

No labels
No labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions