diff --git a/LINKS.md b/LINKS.md index 6e4827e013029957fb03f7a92ce6d119eccca692..630642cc92bc9df572caeb9292534554bf142e4f 100644 --- a/LINKS.md +++ b/LINKS.md @@ -1,8 +1,8 @@ # Useful Design Notes -[How to Make Almost Anything: Mechanical Design](http://academy.cba.mit.edu/classes/mechanical_design/index.html) -[How to Make Almost Anything: Machine Design](http://academy.cba.mit.edu/classes/machine_design/index.html) -[How to Make Something that Makes Almost Anything](https://fab.cba.mit.edu/classes/865.21/index.html) +[How to Make Almost Anything: Mechanical Design](http://academy.cba.mit.edu/classes/mechanical_design/index.html) +[How to Make Almost Anything: Machine Design](http://academy.cba.mit.edu/classes/machine_design/index.html) +[How to Make Something that Makes Almost Anything](https://fab.cba.mit.edu/classes/865.21/index.html) ## MechE diff --git a/README.md b/README.md index 59bdf0b99e2cf1e5e0d28bbebf3e6f60465c27a6..b563d0a293995cb5a74b92fa21312bb599856be2 100644 --- a/README.md +++ b/README.md @@ -1,24 +1,39 @@ -# Machine Week 2023 +# Machine Week 2024 ``` everything's connected but nothing's working ! ``` +> [Controls Repository: machineweek-2024-control](https://gitlab.cba.mit.edu/jakeread/machineweek-2024-control) + # 1. Your (Group) Task -Each section will design and build a "machine" - this means anything that includes **mechanism, actuation, automation and application**, that just means: +Each section will design and build a "machine" - this means anything that includes **mechanism, actuation, automation and application.** + +You'll get a [**kit of parts**](KIT.md) to do this, and we have [**an example linear axis**](TODO) and [**an example rotary axis**](TODO) that you can use as building blocks. We also have two example projects: [**a xylophone that plays itself**](TODO) and a [**small, very fast drawing machine**](TODO). We also provide a [**set of modular hardware and software for motion control**](https://gitlab.cba.mit.edu/jakeread/machineweek-2024-control) (requires a gitlab login) to help get things moving. + +You should also **document your machine** and **use git to collaborate** a-la last year's examples: + +- CBA Section 2023: [repo](https://gitlab.cba.mit.edu/classes/863.23/CBA/machine) and [website](https://fab.cba.mit.edu/classes/863.23/CBA/machine/index.html) +- Harvard Section 2023: [repo](https://gitlab.cba.mit.edu/classes/863.23/Harvard/machine) and [website](https://fab.cba.mit.edu/classes/863.23/Harvard/machine/index.html) ### **Mechanism:** mechanical degrees-of-freedom (DOF) -Stuff shuld move around. +Stuff should move around! + +- [Kinematics, Constraint](https://fab.cba.mit.edu/classes/865.21/topics/mechanical_design//kinematics/) +- [Mechanical Principles](https://fab.cba.mit.edu/classes/865.21/topics/mechanical_design//principles/) ### **Actuation:** computer-controllable motion of the above DOFs The motion should be computer controlled. -### **Automation / Application** software-coordinated computer-control of the above, and i.e. sequences therein +- [Stepper Controllers](https://gitlab.cba.mit.edu/jakeread/machineweek-2024-control/-/tree/main/circuits/simple-stepper?ref_type=heads) (TODO: improve doc) +- [Transmissions](https://fab.cba.mit.edu/classes/865.21/topics/mechanical_design//transmissions/) + +### **Automation / Application** software-coordinated computer-control of the above, to accomplish a task. -The motion should result in some desired outcome... maybe make something, draw something, change something, assemble something, sort something, cast a spell, etc. +The motion should result in some desired outcome... maybe make something, draw something, change something, assemble something, sort something, cast a spell, etc. --- diff --git a/TODO.md b/TODO.md index 62ff281fe4ee51e681bc42003ad6f027eed35110..8e9f8c786f8a6b4a345bc68a5f873ce9c66134a2 100644 --- a/TODO.md +++ b/TODO.md @@ -3,23 +3,56 @@ ## Prepatory Hardware Actions - hardware kit... aligning with demo parts ? + - i.e. improve that belt axis a little ? - router circuits reflow, assembly ? - circuits on motors, fertha kids ? - 16 motors... either we reflow the known codes or we deploy-test the new lads + - we have enough of each, but need to PNP by hand + - tbd if this is worth it over the cost of the new boards: + - spend the few-hours bringing up firmware instead... at the cost of 1/2 circuit stash, + - re-ups possible, but maybe time consuming... but testing is also worthwhile - limit switch boards, or some other way to Reduce Limit Switch Suffering (or fk it, focus on code) - backpack-to-whatever circuit ? - jlcpcb rush assy ? ## Prepatory SI Actions - +- important: *NOT SURE ABOUT FIRMWARE UPDATES YET* +- minimum: + - non-blocking queue planner / segments transmitter + - (!) forwards and reverse transforms, for homing cycles ? - the handbook ? - ... graphs, or what ? - deadbugger, hbridge, stepper firmwares ? - docs for circuits, python, etc ? - consider: more productive to do nuts-and-bolts perf for the segment solver (etc), than full-on graphs - though the latter is more fun +- how to rename devices, besides just uploading new firmwares ? ## Demo Desires - make the xylophone into a standalone example project -- samesies for the little guy +- samesies for the little guy, vvelocity + +## When is it Over + +- prep is done when: + - kits are ready + - and pic acquired + - routers are ready + - ... other circuits are ready: + - either firmware-and-test for the new drivers *or* build and test the og's + - one deadbugger, one hbridge each, with firmwares and APIs for those ? + - limit switch switchuation ? + - demos are ready: + - piano-or-midi xylo + - little guy + - this includes unfking maxl (and it might just be that one bad await-all call) + - and i.e. a rasbpi setup w/ power situation, etc - the little guy should be finish, bottled ! + - the mega / multi plotter ? + - docs: + - cable building ? + - cad, interfaces for circuits (mount holes...) + - firmware loading / reloading ? + - what happens when multiples of the same name connected ? + - how to connect servo-z-axes, etc ? + - handbook OK ? \ No newline at end of file