Lab

Recommended Tools

In addition to the resources that the course provides, students may find it useful to obtain the tools below:

  • wire cutter
  • wire stripper
  • needle nose pliers
  • screwdrivers
  • hex set (ball ends)
  • electrical tape
  • small scissors
  • a small file

Lab Resources

The Srivastava Senior Design Lab (2070 ECEB) is dedicated to ECE 445 usage. This lab provides you access to a vast array of lab equipment, hardware, and software for your use in developing and implementing your senior design project. In addition, course staff will make themselves available in this lab during their office hours to provide guidance on your project throughout the semester. It is our intention that this laboratory space provides you and your team with all the tools you would need to develop and test your project (within reason!). If there is something that you require in the lab to complete your project that does not exist in the lab, talk to your TA and we will see if we can remedy the situation.

Lab Bench Reservations

If and when the semester gets so busy that finding a lab bench to work at becomes difficult, please make use of the Lab Bench Reservation System in PACE. Reserving a lab bench will guarantee priority access to that bench, even when the lab is busy. To use the tool, after authenticating in PACE, you will see a page with a title "Signup for lab bench" with some text and a large table below that. The table shows the schedule for each bench on a given day (use the orange arrows or "Go To Date" text box to see a different day).  You make your reservation by simply clicking in a grid cell in the table, which will turn the box green. Click on it again to un-reserve the bench (and the box will turn white again).  Benches that are already reserved by another group will be denoted with a yellow box (you can hover your mouse over a yellow box to find out what group has reserved the bench).

A few ground rules:

  1. You may use a lab bench (a) during a time for which you have it reserved or (b) any time during which it is not reserved in the system (on a first-come-first-served basis). However, if you are working at a bench that is unreserved and somebody reserves it using the online system, the group with the reservation gets the lab bench.
  2. There is a limit on the amount of time for which you can reserve benches in 2070 ECEB.  The limit is currently a total of 4 hours of total bench time in the lab per group per day (e.g., 2 hours at Bench A and 2 hours at Bench B would max out your team's reservations for the day).  While this may seem restrictive, keep in mind that the course serves more than 60 groups in a typical semester and the lab has only 16 benches.  Also keep in mind that you can work at a bench if it is unreserved.
  3. Some lab benches have specialized equipment at them, such as digital logic analyzers.  Try to reserve the lab bench that has the equipment that you need.
  4. Cancel reservations that you will not need as soon as possible to give other groups a chance to reserve the lab bench.  You can cancel a reservation up to 1 hour before time and not have it count against your daily allotment.
  5. Conflicts and/or reports of people not following these rules should be sent to your TA with the course faculty in copy.
  6. Above all, be courteous.  Especially near the end of the semester, the lab will be full most of the time and stress will abound.  Clean up the lab bench when you are done with it.  Start and end your sessions on time.  Be patient and friendly to your peers and try to resolve conflicts professionally.  If we notice empty lab benches that have been reserved, we will cancel your reservations and limit your ability to reserve lab benches in the future. Similarly, do not reserve more time than you will need.  If we notice that you are frequently canceling reservations, we will limit your ability to reserve lab benches in the future. Finally, do not try to “game” the system and reserve a bench for 30 minutes every hour for eight hours. We will notice this and revoke your ability to reserve a bench.

Lab Rules

There are two overriding rules of working in the Srivastava Senior Design Lab. First, be safe. Second, be courteous. Lab access will be revoked if you fail to complete the required laboratory safety training by the deadline or if you break any of the lab rules. Specific points and examples of what we expect:

Breaking the rules or exhibiting bad laboratory etiquette will lead to a loss of points and/or revocation of laboratory access.

Lab Equipment Rules

Do not remove any equipment from the lab. Students may not change the connections on equipment without TA approval. Any approved changes that are made should be undone before leaving the lab. If a bench instrument is malfunctioning, a red repair tag should be placed on it and you should notify your TA. This alerts the staff to the problem, and allows the Electronics Services Shop to fix the problem.

When using a piece of laboratory equipment for the first time, please ask a TA for help. If you are inexperienced with a piece of hardware, do not assume that it is broken just because you cannot figure out how to use it. Similarly, if you use a piece of equipment to test your project and the equipment does not perform the way you think it should, do not assume the fault is with the equipment, and do not try again with equipment on another bench. Rather, stop and make absolutely sure the problem is not with your connections or project.

If you break any laboratory equipment, you must tell your TA within 1 business day. Any attempts to conceal breakage will result in an F in the course.

Room Access

The lab room (2070 ECEB) is on the electronic key-card system. The Department automatically adds room access to the building and the lab for all students on the roster. You will need a “prox enanabled” I-Card to swipe into the room. If the door does not open after several attempts, you may need to get a replacement card. Room access is automatically restricted to faculty and TAs during official breaks (i.e., Thanksgiving, Christmas, and Spring Break).

Computer Access

The lab computers are EWS computers and are setup like other Windows-based EWS systems you are familiar with. Standard EWS rules apply to these machines. In particular, please store any/all files you generate on a network drive or in the cloud. The C: drive should not be used for any personal material, since it is unprotected and is available only on the particular machine where it was originally stored. A particular computer may be cleared and reconfigured at any time for maintenance reasons.

In addition to the desktop computers, EWS maintains the printer in the lab. You are free to use it to print documents related to your project, but be aware that this printing counts against your standard print quota.

WHEELED-LEGGED BALANCING ROBOT

Gabriel Gao, Jerry Wang, Zehao Yuan

WHEELED-LEGGED BALANCING ROBOT

Featured Project

# WHEELED-LEGGED BALANCING ROBOT

## Team Members:

- Gabriel Gao (ngao4)

- Zehao Yuan (zehaoy2)

- Jerry Wang (runxuan6)

# Problem

The motivation for this project arises from the limitations inherent in conventional wheeled delivery robots, which predominantly feature a four-wheel chassis. This design restricts their ability to navigate terrains with obstacles, bumps, and stairs—common features in urban environments. A wheel-legged balancing robot, on the other hand, can effortlessly overcome such challenges, making it a particularly promising solution for delivery services.

# Solution

The primary objective of this phase of the project is to demonstrate that a single leg of the robot can successfully bear weight and function as an electronic suspension system. Achieving this will lay the foundation for the subsequent development of the full robot.

# Solution Components

## Subsystem 1. Hybrid Mobility Module:

Actuated Legs: Four actuator motors (DM-J4310-2EC) power the legged system, enabling the robot to navigate uneven surfaces, obstacles, and stairs. The legs also functions as an advanced electromagnetic suspension system, quickly adjusting damping and stiffness to ensure a stable and level platform.

Wheeled Drive: Two direct drive BLDC (M3508) motors propel the wheels, enabling efficient travel on flat terrains.

**Note: 4xDM4310s and 2xM3508 motor can be borrow from RSO: Illini Robomaster** - [Image of Motors on campus](https://github.com/ngao4/Wheel_Legged_Robot/blob/main/image/motors.jpg)

The DM4310 has a built in ESC with CAN bus and double absolute encoder, able to provide 4 nm continuous torque. This torque allows the robot or the leg system to act as suspension system and carry enough weight for further application. M3508 also has ESC available in the lab, it is an FOC ESC with CAN bus communication. So in this project we are not focusing on motor driver parts. The motors would communicate with STM32 through CAN bus with about 1 kHz rate.

## Subsystem 2. Central Control Unit and PCB:

An STM32F103 microcontroller acts as the brain of the robot, processing input from the IMU through SPI signal, directing the motors through CAN bus. The pcb includes STM32F103 chip, BMI088 imu, power supply parts and also sbus remote control signal inverter.

Might further upgrade to STM32F407 if needed.

Attitude Sensing: A 6-axis IMU (BMI088) continuously monitors the robot's orientation and motion, facilitating real-time adjustments to ensure stability and correct navigation. The BMI088 would be part of the PCB component.

## Subsystem 3. Testing Platform

The leg will be connected to a harness as shown in this [sketch](https://github.com/ngao4/Wheel_Legged_Robot/blob/main/image/sketch.jpg). The harness simplifies the model by restricting the robot’s motion in the Y-axis, while retaining the freedom for the robot to move on the X-axis and jump in the Z-axis. The harness also guarantees safety as it prevents the robot from moving outside its limit.

## Subsystem 4. Payload Compartment (3D-printed):

A designated section to securely hold and transport items, ensuring that they are protected from disturbances during transit. We will add weights to test the maximum payload of the robot.

## Subsystem 5. Remote Controller:

A 2.4 GHz RC sbus remote controller will be used to control the robot. This hand-held device provides real-time control, making it simple for us to operate the robot at various distances. Safety is ensured as we can set a switch as a kill switch to shutdown the robot in emergency conditions.

**Note: Remote controller model: DJI DT7, can be borrow from RSO: Illini Robomaster**

The remote controller set comes with a receiver, the output is sbus signal which is commonly used in RC control. We would add an inverter circuit on pcb allowing the sbus signal to be read by STM32.

Note: When only demoing the leg function, the RC controller may not be used.

## Subsystem 6. Power System

We are considering a 6s (24V) Lithium Battery to power the robot. An alternative solution is to power the robot through a power supply using a pair of long wires.

# Criterion For Success

**Stable Balancing:** The robot (leg) should maintain its balance in a variety of situations, both static (when stationary) and dynamic (when moving).

**Cargo Carriage:** The robot(leg) can be able to carry a specified weight (like 1lb) without compromising its balance or ability to move.

_________________________________________________________________________

**If we are able to test the leg and function normally before midterm, we would try to build the whole wheel legged balancing robot out. It would be able to complete the following :**

**Directional Movement:** Via remote control, the robot should move precisely in the desired direction(up and down), showcasing smooth accelerations, decelerations, and turns.

**Platform Leveling:** Even when navigating slopes or uneven terrains, the robot should consistently ensure that its platform remains flat, preserving the integrity of the cargo it carries. Any tilt should be minimized, ideally maintaining a platform angle variation within a range of 10 degrees or less from the horizontal.

**Position Retention:** In the event of disruptions like pushes or kicks, the robot should make efforts to return to its original location or at least resist being moved too far off its original position.

**Safety:** During its operations, the robot should not pose a danger to its surroundings, ensuring controlled movements, especially when correcting its balance or position. The robot should be able to shut down (safety mode) by remote control.

Project Videos