Intro
While waiting for components I've been busy designing some 3D printed parts and wiring up some of the connectors that I do have. The first section of this blog shows one of my favorite types of connector from TE Connectivity, actually the MTA series from their AMP brand. The last section shows the robot torso design and demonstrates its display.
MTA Connector Assembly
Sammy Semaphore Torso Design
Sammy was going to be blue, but orange is what I have available for my printer. This is the torso design:
That is the hard part of the design, so it is good that it is printed and functional.
Software
Here is the little brute force program to display "TORSO":
//Arduino UNO 8x8 NEO pixel display "TORSO" demo //by Doug Wong 2022 #include <FastLED.h> #define NLEDS 64 #define LEDpin 2 CRGB leds[NLEDS]; byte AL[26][8] = { {129, 129, 129, 255, 129, 129, 66, 60}, //A0 {127, 129, 129, 129, 127, 129, 129, 127}, //B1 {124, 130, 1, 1, 1, 1, 130, 124}, //C2 {63, 65, 129, 129, 129, 129, 65, 63}, //D3 {255, 1, 1, 1, 63, 1, 1, 255}, //E4 {1, 1, 1, 1, 63, 1, 1, 255}, //F5 {124, 130, 129, 225, 1, 1, 130, 124}, //G6 {129, 129, 129, 129, 255, 129, 129, 129}, //H7 {28, 8, 8, 8, 8, 8, 8, 28}, //I8 {30, 33, 33, 32, 32, 32, 32, 248}, //J9 {129, 65, 33, 17, 31, 33, 65, 129}, //K10 {255, 129, 1, 1, 1, 1, 1, 1}, //L11 {129, 129, 129, 129, 153, 165, 195, 129}, //M12 {129, 193, 161, 145, 145, 137, 133, 131}, //N13 {126, 129, 129, 129, 129, 129, 129, 126}, //O14 {1, 1, 1, 1, 127, 129, 129, 127}, //P15 {190, 65, 161, 129, 129, 129, 129, 126}, //Q16 {129, 65, 33, 127, 129, 129, 129, 127}, //R17 {126, 129, 128, 64, 62, 1, 129, 126}, //S18 {8, 8, 8, 8, 8, 8, 8, 127}, //T19 {126, 129, 129, 129, 129, 129, 129, 129}, //U20 {24, 36, 36, 66, 66, 129, 129, 129}, //V21 {129, 195, 165, 153, 129, 129, 129, 129}, //W22 {129, 66, 36, 24, 24, 36, 66, 129}, //X23 {16, 16, 16, 16, 24, 36, 66, 129}, //Y24 {255, 2, 4, 8, 16, 32, 64, 255} //Z25 }; int abc, rc, cc; void setup() { FastLED.addLeds<WS2812B, LEDpin, GRB>(leds, NLEDS); FastLED.setBrightness(50); } void loop() { // for (abc = 0; abc < 26; abc++) // { DisplayChar(19); delay(600); DisplayChar(14); delay(600); DisplayChar(17); delay(600); DisplayChar(18); delay(600); DisplayChar(14); delay(600); BlankDisplay(); delay(1000); } void DisplayChar(int abc){ for (rc = 0; rc < 8; rc++) { for (cc = 0; cc < 8; cc++) { if (bitRead(AL[abc][rc], cc) == 1) { leds[rc + cc * 8] = CRGB::Green; } else { leds[rc + cc * 8] = CRGB::Black; } } } FastLED.show(); } void BlankDisplay() { for (int ac = 0; ac < 64; ac++) { leds[ac] = CRGB::Black; } FastLED.show(); }
Discussion for Blog 4
The project is starting to come together, but there are still many pieces to arrive or resolve. At least the concept is starting to look real.
Relevant Links:
Twist, Turn and Move Design Challenge with TE Robotics
Sammy Semaphore - blog 1
Connector Tester - blog 2
NEO Pixel Display - blog 3
Sammy Semaphore Torso Demo - Blog 4
I Am Sam I Am - Blog 5
TE Connectivity Connector Tester Blog 6
Sammy Semaphore Fully Functional Blog 7