Classes: Difference between revisions

From
(Created page with "=Rapid prototyping= =3D Solid modeling= =Digital electronics= =Power electronics= * Battery electric solar power systems =Integrated circuit design= =3D Printing and CNC...")
 
 
(76 intermediate revisions by the same user not shown)
Line 1: Line 1:
=Rapid prototyping=
=3D Solid modeling=
==Video==
<youtube>c1K-jBWytSQ</youtube>
<youtube>u8otDF_C_fw</youtube>
<youtube>z8lqDGMTbZs</youtube>
<youtube>4EZL4O6b0BE</youtube>
 
==Reading==
* https://urish.medium.com/designing-3d-printable-mechanisms-in-openscad-5838dcb65b39
* [https://mastering-openscad.eu/ Guide to mastering OpenSCAD]
* [https://queue.acm.org/detail.cfm?id=3469844 A New Era for Mechanical CAD: Time to move forward from decades-old design]
* [https://github.com/m2n037/awesome-mecheng Awesome mechanical engineering resources]
* [https://doi.org/10.1371/journal.pone.0225795 Parametric CAD modeling for open source scientific hardware: Comparing OpenSCAD and FreeCAD Python scripts]
* [https://gusmith.wordpress.com/2015/09/18/simple-tool-for-creating-polyhedrons-in-openscad/ Simple tool for creating polyhedrons in openscad]
 
==Lesson plan==
* Introduction to the Replimat CAD stack(s)
** [https://en.wikipedia.org/wiki/Constructive_solid_geometry CSG and solid primitives]
** [https://en.wikipedia.org/wiki/Boolean_operations_on_polygons Boolean operations]
** 2D drawing with [https://en.wikipedia.org/wiki/Constraint_(computer-aided_design) constraints] and extrusion
** [https://www.openscad.org/ OpenSCAD]
** [https://github.com/nophead/NopSCADlib NopSCADlib]


=3D Solid modeling=
==Badge==


=Digital electronics=
=Digital electronics=
==Tools==
* [https://sigrok.org/wiki/PulseView PulseView]
==Reading==
* [https://hackaday.com/2016/09/21/creating-a-pcb-in-everything-introduction/ Creating a PCB in Everything]
==Lesson plan==
* lithography and etching
* purpose of a jumper
==References==
* [https://www.arstemlabs.com/ AR STEM Labs Alektra electronics simulation]


=Power electronics=
=Power electronics=
* Battery electric solar power systems
* Battery electric solar power systems
==Reading==
==Lesson plan==


=Integrated circuit design=
=Integrated circuit design=
==Tools==
* [https://icestudio.io/ ICEStudio]
==Video==
<youtube>aRAyVoljc_w</youtube>
<youtube>RKKXaWz9mMQ</youtube>
<youtube>Qs1gSzAy4Q4</youtube>
<youtube>NBIaS6GA0cQ</youtube>
==Reading==
* [http://fpgacpu.ca/fpga/index.html FPGA Design Elements]
* [https://github.com/RAPcores RAPcores github]
==Lesson plan==


=3D Printing and CNC machining=
=3D Printing and CNC machining=
<youtube>OnmLKIVN6g4</youtube>
<youtube>ht4tbCiFxeM</youtube>
==Reading==
* [https://lcamtuf.coredump.cx/gcnc/ Guerilla Guide To CNC Machining, Mold Making, And Resin Casting]
==Lesson plan==
* [https://softsolder.files.wordpress.com/2009/01/cnc-introduction-2011.pdf Why CNC? An Introduction]
* introduction to 3D printing
** processes
** design criteria
*** overhangs
*** delamination and through-hole orientation
*** sharp corners
** toolpath generation with FreeCAD
*** import mesh
*** part workbench
*** part->create shape from mesh
*** path workbench
*** create path object
*** post-process the selected job
==References==
* [https://100kgarages.com/ 100k garages]
* [https://emachineshop.com/ eMachineShop]
=Firmware development w/ C++, Rust=
==Reading==
* [https://gamemath.com/book/intro.html 3D Math Primer for Graphics and Game Development]
* [https://fabiensanglard.net/floating_point_visually_explained/ Floating Point Visually Explained]
* [https://en.algorithmica.org/hpc/ Algorithms for Modern Hardware]
* [https://beej.us/guide/bgnet/ Beej's Guide to Network Programming]
* [https://beej.us/guide/bgipc/ Beej's Guide to Unix Interprocess Communication]
* [https://docs.rust-embedded.org/book/interoperability/c-with-rust.html A Little C With  Your Rust]
* [https://docs.rust-embedded.org/book/interoperability/rust-with-c.html A Little Rust With Your C]
* [https://luckyresistor.me/knowledge/learn-cpp/ Learn Effective C++ for Embedded]
* [https://youtube.com/c/NoBoilerplate YouTube: No Boilerplate]
* [https://github.com/rust-unofficial/awesome-rust GitHub: Awesome Rust]
==Lesson plan==
* introduction to the AVR microcontroller
** [https://ww1.microchip.com/downloads/en/devicedoc/atmel-2549-8-bit-avr-microcontroller-atmega640-1280-1281-2560-2561_datasheet.pdf datasheet]
** [https://www.nongnu.org/avr-libc/user-manual/index.html avr-libc] [https://www.nongnu.org/avr-libc/user-manual/malloc.html memory layout]
** arduino (avr-gcc, avrdude, IDE - [https://en.wikipedia.org/wiki/Wiring_(development_platform) wiring] / [https://processing.org/ processing])
*** [https://www.arduino.cc/en/main/standalone building an arduino on a breadboard]
** [https://reprap.org/mediawiki/images/thumb/2/20/Rumba_wiring.svg/800px-Rumba_wiring.svg.png electronics block diagram]
* [http://www.dein.fr/2015-02-18-maslows-pyramid-of-code-review.html maslow's pyramid of code review]
* introduction to RepRap lineage firmwares
** firmware block diagram
** gcode parsing - marlin_main.cpp
** motion planning - planner.cpp
** stepper driving - stepper.cpp
** time domains / block buffer
** [https://en.wikipedia.org/wiki/General-purpose_input/output GPIO] Pins
** timers
** interrupts
** signal generation
=Food production=
==Reading==
==Lesson plan==
=Robot Operating System=
==Reading==
<youtube>M9ABtlEM788</youtube>
<youtube>dEPvZZ4luV4</youtube>
<youtube>9D33R0Me9Bw</youtube>
<youtube>tIob2_Rze80</youtube>
<youtube>ugx82hz-oMc</youtube>
<youtube>IN8tjTk8ExI</youtube>
=Computer troubleshooting and repair=
==Reading==
[[File:Computer hardware chart.png|thumb]]
* [https://tldp.org/docs.html#howto The Linux Documentation Project]
* [https://www.linuxfromscratch.org/ Linux From Scratch]
* [https://www.deviantart.com/sonic840/art/Computer-Hardware-Chart-2-0-587798335 Computer Hardware Chart]
* [https://en.wikipedia.org/wiki/BIOS BIOS] and [https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface UEFI]
*smartmontools (smartctl -a), badblocks / memtest86+
* [https://en.wikipedia.org/wiki/Linux_startup_process Linux startup process]
* [http://btmgr.sourceforge.net/about.html Smart Boot Manager]
* [http://www.guzu.net/linux/datarecovery.php Data recovery resources]
* [https://github.com/pikvm/pikvm PiKVM]
* [http://dbp-consulting.com/tutorials/debugging/linuxProgramStartup.html Linux ELF program startup]
* [https://www.madebygps.com/an-intro-to-finding-things-in-linux/ An Intro To Finding Things In Linux]
* [https://web.stanford.edu/class/cs101/ Stanford.edu: CS101]
* [https://lym.readthedocs.io/en/latest/index.html Welcome to Linux command line for you and me!]
* [https://github.com/corkami/pics/blob/master/binary/README.md Infographics]
==Toolkit==
* USB <-> Hard drive adapter
* Multimeter
* A Port 80 card for diagnosing POST problems
* a pre-configured, ready to launch, kernel compile (best memory test ever)
* [http://www.cgsecurity.org/wiki/PhotoRec PhotoRec] - recover files without needing to recover partitions
* [http://www.cgsecurity.org/wiki/TestDisk TestDisk] - recover partitions & files
* [http://gparted.sourceforge.net/ gparted] - create, copy, edit, resize, and delete partitions graphically
* ddrescue
* dmidecode
* flashrom
* [http://etherboot.org/wiki/ Etherboot/gpxe], iSCSI, ATAoE
* kvm, libvirt, virt-manager
* [https://www.ventoy.net/en/index.html Ventoy multi-boot USB disk]


=Software development with Rust=
==Lesson plan==

Latest revision as of 23:30, 26 December 2022

3D Solid modeling

Video

Reading

Lesson plan

Badge

Digital electronics

Tools

Reading

Lesson plan

  • lithography and etching
  • purpose of a jumper

References

Power electronics

  • Battery electric solar power systems

Reading

Lesson plan

Integrated circuit design

Tools

Video

Reading

Lesson plan

3D Printing and CNC machining

Reading

Lesson plan

  • Why CNC? An Introduction
  • introduction to 3D printing
    • processes
    • design criteria
      • overhangs
      • delamination and through-hole orientation
      • sharp corners
    • toolpath generation with FreeCAD
      • import mesh
      • part workbench
      • part->create shape from mesh
      • path workbench
      • create path object
      • post-process the selected job

References

Firmware development w/ C++, Rust

Reading

Lesson plan

Food production

Reading

Lesson plan

Robot Operating System

Reading

Computer troubleshooting and repair

Reading

Error creating thumbnail: File with dimensions greater than 12.5 MP

Toolkit

  • USB <-> Hard drive adapter
  • Multimeter
  • A Port 80 card for diagnosing POST problems
  • a pre-configured, ready to launch, kernel compile (best memory test ever)
  • PhotoRec - recover files without needing to recover partitions
  • TestDisk - recover partitions & files
  • gparted - create, copy, edit, resize, and delete partitions graphically
  • ddrescue
  • dmidecode
  • flashrom
  • Etherboot/gpxe, iSCSI, ATAoE
  • kvm, libvirt, virt-manager
  • Ventoy multi-boot USB disk

Lesson plan