User Tools

Site Tools


ece4560:biped:06gait_ph1_gen

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
ece4560:biped:06gait_ph1_gen [2022/11/08 15:38] typosece4560:biped:06gait_ph1_gen [2024/08/20 21:38] (current) – external edit 127.0.0.1
Line 1: Line 1:
-====== Bipedal Robot Locomotion: Leg Optimal Control  ======+====== Bipedal Robot Locomotion: Single Leg Quasi-static Gait  ======
 ---------------------------------------------------------------- ----------------------------------------------------------------
  
-Last week you used Optragen to generate an arbitrary trajectory for a chosen foot frame (relative to the **TORSO** frame). This week we'll begin building on that experience and take baby steps toward generating our full (quasi-static) walking gaits.+Last week you used Optragen to generate an arbitrary trajectory for a chosen foot frame (relative to the **TORSO** frame). This week we'll begin building on that experience and take baby steps toward generating our full (quasi-static) walking gait.
  
-We'll break our walking gait up into multiple gait phases: **SWING** and **DOUBLE**. The gait phases will progress over time as **SWING (right)**, **DOUBLE (right-left)**, **SWING (left)**, **DOUBLE (left-right)** and then repeat. We assume that feet in contact with ground do not slip/slide; hence, their frames serve as a good choice for the stance frame, w.r.t. which motions of other parts of the body may be planned. During the **SWING (right)** and **SWING (left)** phases, the foot not in contact with the ground (ie. **RIGHT_FOOT** and **LEFT_FOOT**, respectively) will be 'swinging' to the next ground contact position from which the next phase of the gait (ie. **DOUBLE**) can continue. Why is the **DOUBLE** phase of the gait important to accomplish quasi-static walking?+We'll break our walking gait up into multiple gait phases: **SWING** and **DOUBLE**. The gait phases will progress over time as **SWING (right)**, **DOUBLE (right-left)**, **SWING (left)**, **DOUBLE (left-right)** and then repeat. We'll assume that feet in contact with the ground do not slip/slide; hence, their frames serve as a good choice for the stance frame, w.r.t. motions of other parts of the body may be planned. During the **SWING (right)** and **SWING (left)** phases, the foot not in contact with the ground (ie. **RIGHT_FOOT** and **LEFT_FOOT**, respectively) will be 'swinging' to the next ground contact position from which the next phase of the gait (ie. **DOUBLE**) can continue. Why is the **DOUBLE** phase of the gait important to accomplish quasi-static walking?
  
 This week we'll focus on the **SWING (right)** phase of the gait. However, keep in mind the **SWING (right)** and **SWING (left)** phases should be symmetric; **LEFT_FOOT** and **RIGHT_FOOT** frames should move identically. Similarly, **DOUBLE (right-left)** and **DOUBLE (left-right)** will be symmetric (we will develop these in future weeks). This week we'll focus on the **SWING (right)** phase of the gait. However, keep in mind the **SWING (right)** and **SWING (left)** phases should be symmetric; **LEFT_FOOT** and **RIGHT_FOOT** frames should move identically. Similarly, **DOUBLE (right-left)** and **DOUBLE (left-right)** will be symmetric (we will develop these in future weeks).
Line 10: Line 10:
 **1.** Generate a feasible motion plan for the **SWING (right)** phase of the walking gait using Optragen. I suggest the following sequence of steps: **1.** Generate a feasible motion plan for the **SWING (right)** phase of the walking gait using Optragen. I suggest the following sequence of steps:
   ***a.)** Select your stance frame to the be the **LEFT_FOOT** frame   ***a.)** Select your stance frame to the be the **LEFT_FOOT** frame
-  ***b.)** Define an initial configuration for this phase of the gait. Both feet must be in contact with the ground. Further, the initial positions of both feet should not coincide; the **RIGHT_FOOT** frame should begin 'behind' the **LEFT_FOOT** frame - remember that this initial configuration must be identical to the final configuration of the **DOUBLE** (left-right) phase of the gait. You will have to consider and define the initial configuration of your biped such that it is 'mid-stride'.+  ***b.)** Define an initial joint configuration for this phase of the gait. Both feet must be in contact with the ground. Further, the initial positions of both feet should not coincide; the **RIGHT_FOOT** frame should begin 'behind' the **LEFT_FOOT** frame - remember that this initial configuration must be identical to the final configuration of the **DOUBLE** (left-right) phase of the gait (since gaits are cyclic in nature)Because of this, you will have to consider and define the initial configuration of your biped such that it is 'mid-stride'.
   ***c.)** Design a trajectory (eg. set of waypoints) such that your **RIGHT_FOOT** frame begins on the ground (you can assume y = 0, w.r.t. your stance frame, is ground), lifts into the air, moves forward and steps back onto the ground. Remember that at the end of the trajectory, the **RIGHT_FOOT** frame orientation must be aligned such that the foot is level with the ground.   ***c.)** Design a trajectory (eg. set of waypoints) such that your **RIGHT_FOOT** frame begins on the ground (you can assume y = 0, w.r.t. your stance frame, is ground), lifts into the air, moves forward and steps back onto the ground. Remember that at the end of the trajectory, the **RIGHT_FOOT** frame orientation must be aligned such that the foot is level with the ground.
   ***d.)** You must consider additional constraints:   ***d.)** You must consider additional constraints:
Line 16: Line 16:
     ***(2)** the knee should not invert (to remain humanly-realistic)      ***(2)** the knee should not invert (to remain humanly-realistic) 
     ***(3)** your **RIGHT_FOOT** frame should not penetrate the ground     ***(3)** your **RIGHT_FOOT** frame should not penetrate the ground
-  ***e.)** Use Optragen to generate your trajectory+  ***e.)** Use Optragen/SNOPT to generate your trajectory
  
-The Optragen examples demonstrate path planning between an initial and final configuration. If you have more than 2 waypoints, you can run the relevant portions of your Optragen script multiple times (eg. in a loop), where each iteration generates the trajectory between consecutive pairs of waypoints. The final trajectory is the concatenation of trajectory pieces generated during each iteration.+The Optragen examples demonstrate path planning between an initial and final configuration. If you have more than 2 waypoints, you can run the relevant portions of your Optragen script multiple times (eg. in a loop), where each iteration generates the trajectory between consecutive pairs of waypoints. The final trajectory is the concatenation of the trajectory pieces generated during each iteration.
  
 **Please generate:** **Please generate:**
Line 24: Line 24:
 **a.** An animation of your biped model executing the **SWING (right)** phase of the gait. The biped and all relevant frames (eg. **TORSO**, **RIGHT_FOOT**, **LEFT_FOOT**) should be displayed along with the CoM. The animation should display the robot with respect to the stance frame (ie. **LEFT_FOOT**). **a.** An animation of your biped model executing the **SWING (right)** phase of the gait. The biped and all relevant frames (eg. **TORSO**, **RIGHT_FOOT**, **LEFT_FOOT**) should be displayed along with the CoM. The animation should display the robot with respect to the stance frame (ie. **LEFT_FOOT**).
  
-**b.** A plot of all joint angles over time. Please remember to label and title your plots!+**b.** A plot of all joint angles over time. Please remember to label your axes and title your plots!
  
  
ece4560/biped/06gait_ph1_gen.1667939883.txt.gz · Last modified: 2024/08/20 21:38 (external edit)