jrPhD / jrPhD/OpenLoopBalanceControl

How to scale the Yeadon parameter models

Open
#3 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
0
Forks
1
PR merge metrics
No merged PRs in 30d

Description

In the directory data/riders/Jason/RawData there are these files:

JasonYeadonMeas.txt
JasonBikeYeadonCFG.txt

Copy these files to a new rider: data/riders/New/RawData/NewYeadonMeas.txt and data/riders/New/RawData/NewBikeCFG.txt.

There are two parameters in the *Meas.txt that you can use to scale the mode relative to Jason's measurements totalmass and measurementconversionfactor.

The yeadon measurements in Jason's file are all in centimeters so you can proportionally scale all distance measurements using:

measurementconversionfactor=0.01*160.0/182.88=0.0087

where 0.01 is centimeter to meter conversion and 160.0 is an example new height of the new rider and 182.88 is the height of Jason in centimeters. Then set the measurementconversionfactor to 0.0087. This will scale the Jason measurements to a shorter person (they will be come thinner too).

Now set the totalmass=75 where 75 would be the mass of the new rider.

In theNewBikeCFG.txt you may need to set the somersault angle more forward (for a shorter person) for the configuration to be properly calculated.

Now in the code you have to find the line that loads a Yeadon Human and load the new rider bike.add_rider('New').

This should give simple scaling based on height and mass measurements. You'll need a new pair of files for each rider.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with data/riders/Jason/RawData/JasonYeadonMeas.txt and JasonBikeYeadonCFG.txt, then find the code entry point that calls add_rider. Create the corresponding New rider files with the stated scaling values and update the rider load to use bike.add_rider('New'). Done means the new rider configuration loads successfully.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend, data
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.