borntoleave / catmini Goto Github PK
View Code? Open in Web Editor NEWThis is the course repository for catMini.
This is the course repository for catMini.
I am working on the servo controller right know and I need to comment some points. We start from the modes.h. In this file you store the position of each servo for every moment. This work as a look up table. I add one example for bd :const char bd[] PROGMEM = { 19,
93, 93, 63, 63,-36,-36, 7, 7,
83, 83, 49, 49,-41,-41, 14, 14,
73, 73, 36, 36,-41,-41, 22, 22,
63, 63, 34, 34,-36,-36, 19, 19,
52, 52, 36, 36,-28,-28, 9, 9,
45, 45, 40, 40,-19,-19, -1, -1,
41, 41, 47, 47,-11,-11,-12,-12,
41, 41, 55, 55, -4, -4,-21,-21,
47, 47, 63, 63, -1, -1,-28,-28,
54, 54, 78, 78, 4, 4,-34,-34,
57, 57, 99, 99, 15, 15,-39,-39,
56, 56,106,106, 27, 27,-36,-36,
61, 61,107,107, 26, 26,-30,-30,
69, 69,104,104, 18, 18,-21,-21,
78, 78, 99, 99, 7, 7,-11,-11,
87, 87, 91, 91, -3, -3, -2, -2,
93, 93, 83, 83,-14,-14, 4, 4,
96, 96, 78, 78,-23,-23, 5, 5,
94, 94, 66, 66,-33,-33, 6, 6,
'\0'};
In this point I have one questions :
Hello,
I have been studying your code and I have found some variables that are directly read from eeprom. I haven't found the value of these variables. It would be great if you could clarify the value of these variables for each servo and the write process. These variables are :
Thanks for your time :)
Some images from wiki, and commited to the repository does not appears to be optimized for sharing on web. If they are not intended to have some extra metadata (ex. a program who exports the PNG also hide a layer data inside the file) could be a good idea use some online service optimize the images.
My suggestion: use the website https://tinypng.com/ to convert the images and upload the optimized ones. This could be useful not only for documentation pages, but even for code repositories, since the non-optimized files could take much more storage than the code itself.
As comparative, see the improvement, who would be very welcome to users with poor internet (and also at some point could improve search engine rankings by not serving content not optimized for mobile pages):
Hello,
I already have a basic structure where I could make work together :
Right now I would need one explanation of the connection between gait and servo. Could you explain the way you use the data stored in gait to move servos?
In addition, the second step would be to add the data from the accelerometer.
Thanks ;)
With this hardware structure you have create a reponsive robot. You send a command using IR and it reacts. It charges the vector moments from mode.h.
Could you show me the way you have used to desing it? The different parts that it involves.I would like a block structure with the different parts of the code and the interactions of every part. If you could underline the code lines that you use for every part it would be great.
I have started with the buzzer. In this code you use some numbers that I don't understand. I understand that you switch on and off the buffer changing the period to create different tones but I don't understand the way to calculate the frequency and the period. I have attached this piece of code :
int freq = 220 * pow(1.059463, note);
float period = 1000000.0 / freq / 2.0;
for (byte r = 0; r < repeat; r++) {
for (float t = 0; t < duration * 1000; t += period * 2) {
analogWrite(BUZZER, 150); // Almost any value can be used except 0 and 255
// experiment to get the best tone
delayMicroseconds(period); // wait for a delayms ms
analogWrite(BUZZER, 0); // 0 turns it off
delayMicroseconds(period); // wait for a delayms ms
}
delay(pause);
}
As a programming tip you shouldn't use numbers in the code. It makes the code hard to understand. You can use #defines instead. This numbers are named magic numbers.
It would be great to create a functional definition with the basic working modes of the robot. I am thinking about a description of the different walking modes and what to do in each mode. I have realized that it has declared from line 73 to 93 but I would need further explanation.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.