In this exercise, we would like to combine the viewpoints of tempo, repetition and spatial relationship. Through a series of movements such as panning, exchanging positions, changing speeds, and turning around, we tried to explore different combination of these viewpoints.
IRL/URL Week 3_Inspiration Review
Patatap
I like this interactive site because it leaves enough room for the viewer (or player) to explore the usage of the site and the function of each key on their own. In addition, the viewer can create their own performance on the website. The specific usage of this website is not defined. The viewer may get confused at first since they may be waiting for the website to change automatically after they press the first key. But a few seconds later, they will realize that they may need to test by clicking more buttons. The process of exploring is more exciting than being taught how to use the website. And the better thing is that the feedback of each key will change with the change of background color. In other words, there are more opportunities for the viewer to create their own melody or performances. I enjoy it a lot when I play with this website and I feel that a limited explanation of the rules is necessary for interactive installation.
Somebody
I like the idea of asking strangers to deliver messages between friends. We can’t anticipate the ways in which strangers will express themselves for us, so sometimes their expressions come as unexpected surprises. In addition, it also brings strangers closer together and makes the overall atmosphere friendly. But I think such things can only be used for the little everyday things in life, like when my mom asks me when I’ll be home for dinner. I feel that there are certain behaviors like confessing, proposing, apologizing to someone, that their significance lies not in what is communicated, but in the person who goes about doing it has the courage to do it. The same meaning if expressed through a stranger, I would feel that such an apology or confession is not sincere enough.
Final Project
Project: Glowworm in love
Inspiration and Concept
In this project, we combine the human body structure with the glowworm, and exaggerate the characteristics of the body parts such as the spine and hips, to develop the design of an original wearable interactive device and show the animal nature that humans have, especially in the courtship process.
The inspiration for this project comes from Selfish Genes. In this book, Dawkins examines childbearing as an evolutionary strategy, arguing that our genes would guide us to choose the spouse that can best reproduce their offspring. Based on this theory, we try to think about what might affect people’s choice of their spouse from both explicit and implicit perspectives. In terms of direct behavior and appearance, it occurred to us that humans signal attraction by showing the curves of their bodies or by gesturing with their eyes. This reminds us of fireflies: this insect attracts its partner at night by flickering its tail. This is the reason why we modeled it with both the buttocks and the flickering feature enlarged. And from a recessive perspective, or from a genetic, we found the research paper by Dewan MC about the influence of pregnancy on women with adolescent idiopathic scoliosis, which concludes that Nulliparity rates were slightly higher among AIS patients, and more frequent infertility treatment was required. Pregnancy-related back pain was common, and while non-disabling, may have been more severe than in healthy women.
And another research talks about how this alternation in the spine, Scoliosis, as a triplanar deformity can impact the gait pattern. This research study concludes that scoliotic subjects have a slower speed of gait due to a shorter stride length and a longer stride time, together with variations in the timing of muscle activation.
So the general logic about this project is that the person wearing this wearable is trying to attract others like an original animal, but at the same time, she is also examined by others in the way that she walks, which also shows the animal nature or the gene that is embedded in human beings. The brain instinctively tells the other whether she is suitable for reproduction or not, which then leads to the judgment of whether she is suitable to be one’s spouse or not. It shows how vulnerable people are in terms of making their “own decision”. Human beings are in fact heavily affected by the genes they have which are out of our control. Different from past work by others in the field, we do not want to express the criticism of the almost primitive charm and natural selection in the process of choosing a spouse, but we want to arouse people’s deeper reflection on love or human characteristics: what makes people tick, and what do people think about besides animal nature? By showing the animalistic nature of human beings that is engraved in their genes, especially in the process of choosing a mate, this work will cause people to think about human nature from the opposite perspective.
Design ideas
We followed the design of hair bands and collars in previous projects 1 and 2, using pressure sensors as the trigger for the whole mechanism. the model pressed the sensors behind her ears to make a flirtatious gesture similar to ruffling her hair, showing her willingness to court, while also triggering the swing of the spine behind her and the flashing of the tail fiber, making the expression of her willingness more distinct.
In order to show the hard armor of glowworms and human skeletons, as well as the romantic emotions of human beings, we used a combination of two materials, 3D printing, and wool, to achieve the coexistence of hardness and softness.
For the sake of unifying colors, we reduced the colors of wool to three: red is the artery, blue is the vein, and pink refers to romantic feelings.
Because this project aims to show the animal side of human genetics, we wanted to make the whole installation a part of the human body, just like human skin would have been, and make it natural. Therefore, we chose a skin tone primer. At the same time, considering that the models had to actually wear it for the school runway, we changed the design several times, adding more designs on the chest and the lower half of the body to enhance its feasibility.
Process
- Heart
We changed the heart previously knitted with wool into a 3D printed heart, using the hole in the middle of the heart and adding red and blue wool between them to represent veins and arteries, hoping to show the effect of both hardness and softness. In the actual printing process, we chose to print the whole heart for the first time, but because of the excessive number of holes and the amount of support needed, we found it difficult to separate the support from the heart itself. So we split the heart into two halves and then glued them during the knitting process.
- Spine
Everything went smoothly during the Prototype process, and we managed to 3D print the spine and take down the support and the mechanism went well.
But when we tried to print more at the same time, we found that the 3 columns of bones were a bit too small for the printer and the support itself was not solid enough. So we reduced it to 2 columns and enlarged the size of the bones. However, during the adjustment process we did not notice that the bases of all the bones were not in fact at the same level, which meant that there were some parts of the bones that we could not remove the support part. So we had to reprint them after another adjustment.
Because the 3D printing process is actually very unstable, and sometimes it inexplicably breaks down, we don’t want to waste any of our relatively intact pieces. We made those relatively imperfect parts into belts, making them the dividing line between human features and insect features. Because of the large size of the bones, we had no way to put them on a sewing machine to work, so we did the sewing by hand.
We tested the last bone that printed most successfully as our spine. In Project 2, we tried the Peaucellier-Lipkin Inversor, but when it came to the actual installation we found that we had no place to fix our slides. As well as the previous motor movement was not effective mainly because the fan blade on the motor was easy to fall off. I found the right size pegs to hold it in place, and the result was instantly better.
- Hip
In Project 1, we used a thin fiber optic to wrap around the water pipe for fixing. The problem we encountered at that time was that the LEDs did not fit tightly into the water pipe to provide light and the process of threading the water pipe outside the fiber was difficult.
We have improved this in the final project. First we changed the size of the fiber and bought a larger diameter fiber (6mm) and a corresponding size 5v LED, and we made two attempts to fix it on our “skin”. The first attempt was to punch a hole in the fiber and then use screws to fix it. The problem was that the cutoff in the middle of the fiber would reduce its ability to conduct light. So we gave up this option and chose to use a water pipe to fix it. Unlike the last time, we used a small cut of water pipes this time and fixed them with a needle and thread in the bend part to make them less obvious.
We also modified the code so that the pressure sensor becomes a trigger for the fiber to light up instead of controlling its brightness directly.
Code:
#include <Servo.h> //header for controller servo Servo myservo; //keeping name of servo SERVO itself int pos = 0; int sensorvalue = 0; int s_pin = A0; void setup() { // initialize serial communication at 9600 bits per second: Serial.begin(9600); pinMode(s_pin,INPUT); pinMode(9,OUTPUT); pinMode(6,OUTPUT); pinMode(11, OUTPUT); //PWM output to servo myservo.attach(11); } // the loop routine runs over and over again forever: void loop() { // read the input on analog pin 0: int sensorValue = analogRead(A0); int newValue = map(sensorValue,0,1023,0,255); // print out the value you read: Serial.println(sensorValue); if (sensorValue > 50){ digitalWrite(9,LOW); digitalWrite(6,LOW); } else{ digitalWrite(9,HIGH); digitalWrite(6,HIGH); moveServo(); } delay(1); // delay in between reads for stability } void moveServo() { for (pos = 30; pos <= 150; pos += 1) { // goes from 0 degrees to 180 degrees // in steps of 1 degree myservo.write(pos); // tell servo to go to position in variable 'pos' delay(10); // waits 15 ms for the servo to reach the position } for (pos = 150; pos >= 30; pos -= 1) { // goes from 180 degrees to 0 degrees myservo.write(pos); // tell servo to go to position in variable 'pos' delay(10); // waits 15 ms for the servo to reach the position } }
- Box
To store our wires and motors, we printed 2 boxes and punched holes in them so that we could secure them with wires. But the waist box we underestimated the size of the cords, especially the USB cable, so we ended up having to pin them to our waist and put the rechargeables in our lap. For aesthetic purposes, we wrapped them with wool to make them look less abrupt.
- Armor and Wool Design
The armor on the abdomen, the chest and the pattern design on the hips are the last parts of our production. The intent of these designs was to protect the model and hide the traces of underwear. We originally designed the abdominal armor to be covered with interlocking wool, but to add more insect elements and to meet our animalistic theme, we combined the insect abdominal design and modified the puppy armor model (Don’t tell Jade about this—-) to create our current belly armor. And because the white model is too monotonous and the overall design does not fit, we added the element of wool. Because of time constraints, this part of the design I think there is still a lack. Improvement will be highlighting the belly armor, so that the wool becomes an accent. The pattern on the chest and hips is intended to echo the design of the upper body, reflecting the concept of romantic and complex emotions through the interplay of different colors of wool.
Final Result
We finally got everything done right before the IMA show and the mechanism went well (that is I have never supposed). Thanks for the support and help from my partner Younian and our dear Marcela. And our model Jade looks fantastic that night. She is sooooo cute 😭 The Runway show was almost a miracle for me, and it was one of the best nights I’ve had in a while. I was close to tears the moment Jade stepped on the runway. We did it!
Limitation and Further Improvement
- The swing of the spine is not so obvious on the runway, perhaps after we need to enlarge the amplitude of motor movement
- The design of the armor needs further improvement, perhaps we should change the lower decoration to a skirt or the abdominal armor is also printed on the fabric to make it more closely fit the body curve
- The placement of wires and rechargeables is a problem, and a larger box might be better
Labor Division
I started work first because Younian was sick for a few days at the beginning of the project. We basically shared all the work equally such as the overall design, fiber optic fixation, model support disassembly, and armor part of the wool weave. If we have to tell the difference in distribution, I would say I did more sewing and took care of the coding and circuit connections, as well as designing our storage box. But most of our work is done together, and there is no division of labor where one person is responsible for a particular part. This is the second time I’ve worked with Younian on a project and she is the best team member I’ve ever met. I really enjoy working with her and we really help support each other ❤️
References
Dawkins, R. (2006). The Selfish Gene. Oxford University Press.
Dewan MC, Mummareddy N, Bonfield C. The influence of pregnancy on women with adolescent idiopathic scoliosis. Eur Spine J. 2018 Feb;27(2):253-263. doi: 10.1007/s00586-017-5203-7. Epub 2017 Jun 29. PMID: 28664223.
Haber, C.K., Sacco, M. Scoliosis: lower limb asymmetries during the gait cycle. Arch Physiother 5, 4 (2015). https://doi.org/10.1186/s40945-015-0001-1.
Peaucellier–Lipkin linkage
https://en.wikipedia.org/wiki/Peaucellier%E2%80%93Lipkin_linkage
Picture:
Model:
Heart: https://www.thingiverse.com/thing:2704299
Armor: https://www.thingiverse.com/thing:4813609
Spine: https://www.thingiverse.com/thing:4801717
Exercise 11 – 3D Printing on Fabirc
This week we still practice using grasshopper and paneling tools in Rhino. I used the pattern of the bangle assignment and made the geometries grow based on the direction of the pattern. Different from the practice in class in that we randomly generate points, I use the “divide the curve” function to create multiple points on the curve and create geometries.
But when I exported, I found the file was extremely big and there showed the non-manifold edges warning. With the help of Marcela, I learned that it is necessary to check the result number of the component and when it number is too large, we need to use the “flatten” function.
In the actual printing process also pay attention to the gap between the models and their own size. I set the gap between the models to be too small when I set up the print, and they were a little too closely aligned. But more importantly, the model itself should not be too small. I chose a very small size to save time, and the model has a lot of parts, so they are each very small. When I needed to separate them from the support parts it was very difficult, so it didn’t work well.
Further Improvement Tip:
Enlarge the volume of each element in the model and reduce their number
Exercise 10_Grasshopper
The interesting thing about Grasshopper is that I don’t need to select a surface or a mesh in the Rhino interface, so I don’t have to select the wrong one. It was also fun to use the Graph mapper or MD slider to slide the image to change the surface of the object. But the hard part is that it’s hard for me to know the meaning of all the components at once, and I need more practice to use them. Also my computer gets stuck easily, but luckily I saved everything in time this time 😀
Assignment
Press “option+space bar”
Exercise
Exercise 9 — 3D modeling
This week I use the paneling tools in Rhino and practice using Rhino to create something wearable.
Following the instruction, I make the ring with a fixed shape. Since in-class instruction is very detailed, everything went well.
And then I follow the video to make the mask.
When I use the sphere function to create a three-dimensional mask and trim the sphere based on the mask image I have, it shows the wrong section. At last, I find that I need to trim it in the front view. In that case, it can work.
When I created the contours of the face, I found that the effect I created was different from the one in the video even though I followed its steps and at the same time it looked similar in the front interface. But after smoothing the overall outline became less pronounced and more natural and the differences became smaller. (I always feel like my Rendered interface is very brightly lit overall, making the outline look less distinct, and I’m not sure if this can be adjusted)
I think creating the nose is the hardest part to grasp, and the nose I make always comes out exaggerated. I try to turn the angle down a bit, that becomes more natural.
I finished the work successfully but the sad thing is that my computer crashed right after I exported the stl. file and I didn’t have time to export its working file and the file of the bangle afterwards. (I felt as sad as if I had been hit by a real rhino with its horn) When I tried to print the mask I found again that the mask only had volume on the border and not on the body of the mask although I added the thickness as guided. I tried to add thickness to the exported stl file but it failed, I will try again later.
For the bangle part, just as mentioned before, my computer crashed halfway. I only can find back the read-only file (I can modify it but can not copy or export the file). So I remake the model.
But when I really print it out, I find that it is easy to break. I need to change the width of the pipe (I use 15 in this version and 40 later) And I also wonder whether this problem is caused because the size of the model, so I change the size of the bangle. (To tell the truth, I haven’t realized that width of 11 centimeters and 7 centimeters in height is actually too big for a bangle.)
In the pro version, I change the width of the pipe and enlarge the size of the bangle. And I also find that there is a relatively empty space in the pattern design which means less support in 3D printing. So I add some lines in the pattern to give more support. Now they are very strong but a little bit too big for the wrist, maybe they can serve for the ankle.
Project 2
Based on the previous project, we continue work on Glowworm. We wanted to continue the previous concept of soft emotions and bones, so we still used wool and paper clay to shape the spine.
Meanwhile, based on our previous prototype inspired by a wooden crocodile toy, we used paper as a medium to connect the wool to the bone. We wrapped the wool around the outside, but it was a little too thick to allow the whole device to move flexibly.
At first, we let the pressure sensor read the value directly and reflected it in the motor movement, but under Marcela’s guidance we realized that it would be better to use the pressure sensor as a trigger, so we changed the code. (I actually thought about using the pressure sensor as a trigger at first but when I wrote the if statement I didn’t realize that the else wasn’t necessary and I tried many times to get the code to work the way I wanted it to, but all I had to do was remove the else condition.TT )
Original code and its condition
#include <Servo.h> //header for controller servo Servo servo; //keeping name of servo SERVO itself int sensorvalue =0; void setup(){ pinMode(A2,INPUT); //force sensor value input pinMode(9,OUTPUT); //PWM output to servo servo.attach(9); //telling where signal pin of servo attached(must be a PWM pin) } void loop(){ sensorvalue = analogRead(A2); //read analog value from sensor servo.write(sensorvalue/3); //set servo position based on ADC result }
Code we are using now
#include <Servo.h> //header for controller servo Servo myservo; //keeping name of servo SERVO itself int pos = 0; int sensorvalue = 0; void setup() { pinMode(A2, INPUT); //force sensor value input pinMode(9, OUTPUT); //PWM output to servo myservo.attach(9); //telling where signal pin of servo attached(must be a PWM pin) } void loop() { sensorvalue = analogRead(A2); //read analog value from sensor //set servo position based on ADC result if (sensorvalue >500){ moveServo(); } //moveServo(); //myservo.write(180); } void moveServo() { for (pos = 30; pos <= 150; pos += 1) { // goes from 0 degrees to 180 degrees // in steps of 1 degree myservo.write(pos); // tell servo to go to position in variable 'pos' delay(10); // waits 15 ms for the servo to reach the position } for (pos = 150; pos >= 30; pos -= 1) { // goes from 180 degrees to 0 degrees myservo.write(pos); // tell servo to go to position in variable 'pos' delay(10); // waits 15 ms for the servo to reach the position } }
This is our initial result. To immobilize the spine, we designed a neck collar to make the whole device wearable. z This prototypeg did not work very well for several reasons:
1. The paper in the middle is too thick causing the whole device to be not very flexible
2. The distance between the bones and the bones is too large in so swinging when they can not touch each other to drive the movement
3. The motor is placed below (We haven’t realized at that time)
4. The motor is doing the curved movement and we swing the wooden crocodile toys when the action is actually a little different, perhaps better for linear movement. (We also haven’t realized at that time)
So based on the first two problems, we made another prototype to test. It is a scaled-up version of the model we used in the previous exercise.
We found that it was difficult to return the paper to its proper position after bending, and this problem seemed to be insurmountable for a while, so we needed to think about replacing the structure. Meanwhile, we hope to improve our prototype through 3D printing.
We found a model of a fish skeleton on Thingiverse, replaced the scale and trimmed the parts to make our new version of the skeleton prototype, and learned how to use the 3D printer in the process.
We tried to change the position of the motor to put it above, so that gravity will have less impact on the device. Now the model can be returned to the right position.
In addition, in order to transform the curved motion of the motor into a linear motion, we looked up information and found the Peaucellier-Lipkin Inversor.
We found an approximate model in Thingiverse and improved it (adding slides and make the model consistent with the theory)
For further improvement, we would like to make the model of the motor part smaller so that it can be worn on the body. At the same time, we need to replace the design of the skeletal joints so that they can be naturally connected to the motor part.
This week we work on making the acutator and mechanisms to prepare for our Project 2.
Tips:
Different from the circuit sketch, we need to use the special pin that shows in the code. And the core wire is easy to break, so it is necessary to depress the sewing machine’s pedal very gently to make it work more slowly when winding.
Code:
int pin1 = 6; int pin2 = 9; int d = 500; void setup() { // put your setup code here, to run once: Serial.begin(9600); pinMode(pin1, OUTPUT); pinMode(pin2, OUTPUT); } void loop() { // put your main code here, to run repeatedly: digitalWrite(pin1, HIGH); digitalWrite(pin2, LOW); delay(d); digitalWrite(pin1, LOW); digitalWrite(pin2, HIGH); delay(d); }
For the preparation of Project 2, we wanted to move the spine to show the difference between its orthostatic and non-orthostatic position. We envisioned several mechanisms of twisting and finally found that a wooden crocodile toy was the most feasible way to control its movement with a servo motor.
The effect of this tail curl mechanism is very obvious, but it works normally only one end is fixed, while we can not let it move to the left or right, only inward curl.
The actuator is too small to let the mechanism works normally so we choose to use the servo motor.
With the help of Marcela, we found this wooden crocodile toy, which we modeled later.
Considering that in the final project we need to make the whole spine move, perhaps we need a larger motor to achieve the same effect.
Exercise 7 – Inflatables
This week we worked on making inflatables. The very interesting thing about making an inflatable toy is that you can’t fully imagine the effect of the finished product until it’s really inflated (of course, this should be because of our limited experience) I noticed that we needed to design the folded cutout to be narrower in order for the toy to have an obvious fold. At the same time to ensure that the toy does not leak air is also the key to success. We need to strictly control the temperature of the iron, 100 degrees Celsius to 170 degrees is feasible, but still between 130-150 degrees is safer because the temperature is too high will melt the plastic paper (and always remember to pad the baking paper!!) In order to ensure that the plastic film does not move freely, at the very beginning you can first fix around. It is better to press it gently in different positions than to iron it repeatedly, but be careful with the temperature!
Compared to motor-controlled mechanical devices, the inflatable device has a more surprising effect, because it has a gradual expansion process, while in the process you can not fully imagine the final result.
In our project, perhaps the heart and spine parts can be moved, which will make our glowworm more lifelike.
Code
int motorPump = 9; int valve = 11; int motorSuck = 10; void setup() { // put your setup code here, to run once: Serial.begin(9600); pinMode(motorPump, OUTPUT); pinMode(valve, OUTPUT); pinMode(motorSuck, OUTPUT); } void loop() { // inflate digitalWrite(motorPump,HIGH); digitalWrite(valve, HIGH); digitalWrite(motorSuck, LOW); delay(1000); // deflate digitalWrite(motorPump, LOW); digitalWrite(valve, LOW); digitalWrite(motorSuck, HIGH); delay(1000); }
Project 1 Post
Glowworm
In this project, we wanted to firefly-ize the human. We learned that glowworms flicker at night for courtship, much like a person would do with a wink. When the user presses the sensor in the ear,(we want this action to be done naturally when ruffling the hair, showing a flirtatious gesture, also for the purpose of courtship) the light on his/her body will be dimmed (including the spinal cord and buttocks) At the same time, in order to amplify the feature that fireflies flicker at the tail at night for courtship, we enlarged the buttocks part to make it more prominent. In addition, we also highlight the part of the spine because subconsciously, men will be whether the spine is in the right position as a criterion for courtship because it is a reflection of good fertility. (Dewan MC 2018) And the condition of the spine is shown in people’s walking position (Haber 2015)
The purpose of this work is to show the animalistic nature of human beings that is engraved in their genes, especially in the process of choosing a mate. We do not want to express the criticism of the almost primitive charm and natural selection in the process of choosing a spouse (according to Dawkins, our genes would lead us to select a mate who will produce the most offspring) , but we want to arouse people’s deeper reflection on love or human characteristics: what makes people tick, and what do people think about besides animal nature?
For the design, we used warm wool to knit in the head as well as the heart part. We hope to show the soft and sweet atmosphere of love directly through the choice of color and material.
And for the luminous spinal cord and buttocks, we used fiber optics. In fact, we had previously considered that fiber optics would not be so bright, but it would match the shimmering light of fireflies and the ambiguous atmosphere when flirting. But we did not anticipate that the fiber optic will be so dark and difficult to use led to control, perhaps in the future we will choose to replace the light strip or find a brighter light to provide light.
We also used the strip as a light source during the experiment, but the contact of the circuit was not good, and when we installed it on the clothes it was not under our control again. At the same time, the color of the strip would change every time we pressed it, and we did not find the reason for this situation. So we use the LEDs at last.
For the ass part of the water pipe shape design we have also done consideration. We envisioned a variety of knitting methods and finally decided to wrap and stack in a spiral fashion as seen in the video, so as to enlarge the hip part as much as possible, similar to the principle of a cone corset. In addition, We sewed padding on the hips to make them exaggerated and full.
As an improvement we will later abandon the design of the lower half of the skirt, using water pipe weave for garment production, or use transparent material bottoming because the current fabric looks and overall design has some cut. At the same time, in order to echo the head of the wool, in the lower half of the water pipe appropriate winding wool will be better.
Now we are using paper clay to make the spine part of the bone, after that we need to consider the movable design in this part
Code of the LEDs
int LEDPin1 = 9; //0 if you are using ATtiny int LEDPin2 = 6; //0 if you are using ATtiny int sensorPin = A2; // Analog pin 3 if you are using ATtiny int sensorValue1 = 0; int sensorValue2 = 0; int brightness1; int brightness2; void setup() { pinMode(LEDPin1, OUTPUT); pinMode(LEDPin2, OUTPUT); Serial.begin(9600); //Serial Comm doesn't work with ATtiny } void loop(){ sensorValue1 = analogRead(sensorPin); if (sensorValue1<200){ sensorValue1= 0; }else{ sensorValue1 = sensorValue1; } brightness1 = map(sensorValue1, 200, 1023, 0 ,255); Serial.print(brightness1); analogWrite(LEDPin1, brightness1); sensorValue2 = analogRead(sensorPin); if (sensorValue2<200){ sensorValue2=0; }else{ sensorValue2 = sensorValue2; } brightness2 = map(sensorValue2, 200, 1023, 0 ,255); Serial.print(brightness2); analogWrite(LEDPin2, brightness2); }
References
Dawkins, R. (2006). The Selfish Gene. Oxford University Press.
Dewan MC, Mummareddy N, Bonfield C. The influence of pregnancy on women with adolescent idiopathic scoliosis. Eur Spine J. 2018 Feb;27(2):253-263. doi: 10.1007/s00586-017-5203-7. Epub 2017 Jun 29. PMID: 28664223.
Haber, C.K., Sacco, M. Scoliosis: lower limb asymmetries during the gait cycle. Arch Physiother 5, 4 (2015). https://doi.org/10.1186/s40945-015-0001-1.