So the most important thing to keep in mind when looking at ROS-based designs is that it's meant to be very modular. This hopefully simplifies the task of automotonously controlling a robot into smaller problems that are a little easier to solve, so the problem goes from "autonomously controlling a robot" to "sensing the robot's position in the environment", "moving the robot", and "figuring out where to move the robot based on its position". "Sensing the robot's position" is broken into "calculating wheel odometry", "reading from the IMU", "calculating visual odometry", and "combining all the data to get an accurate robot pose (ROS's term for position and orientation)" "Moving the robot" is broken into "calculating the commands to send to the ESCs", "sending teleop commands", "letting teleop override the autonomous controls" and "sending the commands to the ESCs over CAN" "Figuring out where to move the robot" is broken into "figuring out how to move the robot to a new pose" and "figuring out the next pose t
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package cnc_slicer | |
import ( | |
"gonum.org/v1/gonum/spatial/r3" | |
) | |
import ( | |
"fmt" | |
"math" | |
"sort" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
git clone https://github.com/cliffordwolf/icestorm.git icestorm | |
cd icestorm | |
PREFIX=~ make -j$(nproc) | |
PREFIX=~ sudo make install | |
Installing Arachne-PNR (place&route tool, predecessor to NextPNR): | |
git clone https://github.com/cseed/arachne-pnr.git arachne-pnr | |
cd arachne-pnr | |
PREFIX=~ make -j$(nproc) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+!+[]]+(+[![]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# finds possible lens configurations to make a working microscope given a set of available lenses and a couple of other parameters | |
# outputs the max and min magnification of each valid lens ordering and the total length of each lens system | |
lens = [25.4, 25.4, 25.4, 100.0, -75.0] | |
eye_dist = 270.00 | |
# each lens adds one degree of freedom to the system; it's fully constrained | |
# with 2 lens but every additional lens adds a DoF | |
# so we'll brute force it by checking every possible combination of lengths | |
# between 10mm and 100mm and pick the best set of valid parameters |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <opencv2/core/core.hpp> | |
#include <opencv2/highgui/highgui.hpp> | |
#include <opencv2/imgproc/imgproc.hpp> | |
#include <opencv2/core/cuda.hpp> | |
#include <opencv2/core/cuda_stream_accessor.hpp> | |
#include <opencv2/cudev/ptr2d/glob.hpp> | |
void transfer_caller(cv::cudev::GlobPtrSz<float> in, cv::cudev::PtrStepSz<float> out); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* ADA4807 SPICE Macro-model | |
* Function: Amplifier | |
* | |
* Revision History: | |
* Rev. 4.0 Dec 2014 -TC | |
* Copyright 2014 by Analog Devices | |
* | |
* Refer to http://www.analog.com/Analog_Root/static/techSupport/designTools/spicemodels/license | |
* for License Statement. Use of this model indicates your acceptance | |
* of the terms and provisions in the License Staement. |
I hereby claim:
- I am cactorium on github.
- I am cactorium (https://keybase.io/cactorium) on keybase.
- I have a public key whose fingerprint is 9872 DAA3 6680 490B CD12 D694 0DC7 89A1 5B2E 6E75
To claim this, I am signing this object:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// so this week we're starting where we left off last week! | |
// we moved some of the stuff into a header file called "vectors.h" | |
// so check that out before moving forward | |
// include stuff as before | |
#include <vector> | |
#include <iostream> | |
// here we include our brand new header file | |
// note that its name is surrounded in quotes instead of brackets |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Same #includes as last time, nothing new here | |
#include <vector> | |
#include <iostream> | |
// C++ has structs just like C! | |
// This defines a new type of thing, called a Point | |
// so you can make Points, and they'll all have these exact components | |
struct Point { | |
double x, y, z, mass; | |
}; |
NewerOlder