capten Posted May 10, 2016 Author Share Posted May 10, 2016 Love modding community!We are approaching the last update´s.Since the completion date ever closer moves I have somewhat neglected the worklogs, sorry.So I will summarize again the whole structure of the Arduino.The following components are installed, starting from the top left, so how to write.Stepper Motor 28BYJ-48Driver ULN2003Acoustic sensor HC SR0490db buzzerkeypadArduino Nanoinfrared receivercapacitor 1000 microfaradResistances 470 Ohmdiv. Pins ConnectorsDigital RGB LED Strip WS2812BremoteWhat is it doing?-The Engine opens and closes the door in the base.Can be optional by the remote control or the keypad open close.LEDs in the base plate signal Orangenes light signal (flashing)-The Acoustic sensor covers the entire window and generates an alarm as soon as the window is touched.LEDs in the bottom panel lights red, buzzer sounds-The PC will be on the keypad start and reseten- Via the keypad and the remote control can be programmed to start different light gamesThe Arduino is thus fully occupied. In February I program a little crash course in Arduino occupied and now use the following sketch, which I have partly written himself or adapted to my needs.CODE: #include "Stepper.h" #include "Keypad.h" #include "IRremote.h" #include <Adafruit_NeoPixel.h> #ifdef __AVR__ #include <avr/power.h> #include "FastLED.h" /*----- Variables, Pins -----*/ #define DATA_PIN A4 #define LED_TYPE WS2812B #define COLOR_ORDER GRB #define NUM_LEDS 120 CRGB leds[NUM_LEDS]; #define BRIGHTNESS 250 #define FRAMES_PER_SECOND 120 #endif #define PIN A6 //power #define PIN A7 //reset #define PIN A4 //RGBs #define STEPS 32 // Number of steps per revolution of Internal shaft int Steps2Take; // 2048 = 1 Revolution int receiver = A5; // Signal Pin of IR receiver to Arduino Digital Pin 12 int trigPin = 10; int echoPin = 11; int buzzer = 12; int power = A6; int reset = A7; /*-----( Declare objects )-----*/ // Setup of proper sequencing for Motor Driver Pins // In1, In2, In3, In4 in the sequence 1-3-2-4 Stepper small_stepper(STEPS, A0, A2, A1, A3); IRrecv irrecv(receiver); // create instance of 'irrecv' decode_results results; // create instance of 'decode_results' Adafruit_NeoPixel strip = Adafruit_NeoPixel(120, A4, NEO_GRB + NEO_KHZ800); //Deklarationen Keypad const byte numRows = 4; //number of rows on the keypad const byte numCols = 4; //number of columns on the keypad //keymap defines the key pressed according to the row and columns just as appears on the keypad char keymap[numRows][numCols] = { {'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', 'C'}, {'*', '0', '#', 'D'} }; //Hier die richtigen Pins eintragen!!! Anschlussgrafik gibt es z.B. hier http://www.learningaboutelectronics.com/Articles/Arduino-keypad-circuit.php byte rowPins[numRows] = {9, 8, 7, 6}; byte colPins[numCols] = {5, 4, 3, 2}; //initializes an instance of the Keypad class Keypad myKeypad = Keypad(makeKeymap(keymap), rowPins, colPins, numRows, numCols); void setup() { irrecv.enableIRIn(); // Start the receiver pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); pinMode(buzzer, OUTPUT); pinMode(power, OUTPUT); pinMode(reset, OUTPUT); // tell FastLED about the LED strip configuration FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_LEDS).setCorrection(TypicalLEDStrip); // set master brightness control FastLED.setBrightness(BRIGHTNESS); strip.begin(); strip.show(); // Initialize all pixels to 'off' } // List of patterns to cycle through. Each is defined as a separate function below. typedef void (*SimplePatternList[])(); SimplePatternList gPatterns = { sinelon,}; uint8_t gCurrentPatternNumber = 0; // Index number of which pattern is current uint8_t gHue = 0; // rotating "base color" used by many of the patterns ,0white,250red,100green,150blue void loop() { char keypressed = myKeypad.getKey(); //Tastedruck am Keypad erfassen if (keypressed == 'A') motorLaufen(8700); if (keypressed == 'B') motorLaufen(-8700); if (keypressed == '1') colorWipe(strip.Color(127, 127, 127), 30); // White if (keypressed == '*') digitalWrite(power, HIGH ); digitalWrite(power, LOW ); if (keypressed == '#') digitalWrite(reset, HIGH ); digitalWrite(reset, LOW ); if (irrecv.decode(&results)) { if (results.value == 16761405) // forward pressed motorLaufen(8700); if (results.value == 16712445) // backwards pressed motorLaufen(-8700); if (results.value == 16738455) // taste 0 colorWipe(strip.Color(127, 127, 127), 30); // White if (results.value == 16724175) // taste 1 colorWipe(strip.Color(0, 255, 0), 30); // Green if (results.value == 16718055)//taste 2 theaterChase(strip.Color(127, 127, 127), 1000); // White if (results.value == 16743045) //taste 3 colorWipe(strip.Color( 255, 100, 0), 30); // Orange if (results.value == 16716015)//taste 4 colorWipe(strip.Color( 255, 0, 0), 30); // red if (results.value == 16726215)//taste 5 theaterChase(strip.Color(0, 255, 0), 500); // Green if (results.value == 16734885)//taste 6 theaterChase(strip.Color(0, 0, 255), 1000); // Blue if (results.value == 16728765)//taste 7 colorWipe(strip.Color(0, 0, 255), 30); // blue if (results.value == 16730805)//taste 8 theaterChase(strip.Color(255, 0, 0), 100); // Red if (results.value == 16732845)//taste 9 theaterChase(strip.Color(255, 100, 0), 1000); // Orange if (results.value == 16769055)//taste EQ rainbow(20); if (results.value == 16748655)//taste vol + rainbowCycle(10); if (results.value == 16754775)//taste vol - theaterChaseRainbow(50); if (results.value == 16753245)//taste Power // Call the current pattern function once, updating the 'leds' array { gPatterns[gCurrentPatternNumber](); // send the 'leds' array out to the actual LED strip FastLED.show(); // insert a delay to keep the framerate modest FastLED.delay(1000 / FRAMES_PER_SECOND); } if (results.value == 16736925)//taste Mode rainbow(20); if (results.value == 16769565)//taste Mute rainbow(20); if (results.value == 16720605)//taste Pause rainbow(20); if (results.value == 16750695)//taste gehe zurück rainbow(20); if (results.value == 16756815)//taste U/SD rainbow(20); } if (millis() % 10 == 0) { long duration, distance; digitalWrite(trigPin, LOW); digitalWrite(trigPin, HIGH); digitalWrite(trigPin, LOW); duration = pulseIn(echoPin, HIGH); distance = (duration / 2) / 29.1; if (distance < 40) { digitalWrite(buzzer, HIGH ); theaterChase1(strip.Color(255, 0, 0), 100); // Red strip.show(); } else { digitalWrite(buzzer, LOW ); } if (distance > 200) { Serial.println("Out of range"); } if (distance < 0) { Serial.println("Out of Range"); } } } /* --end main loop -- */ void motorLaufen(int mSteps) { theaterChase(strip.Color(255, 100, 0), 1000); // Orange small_stepper.setSpeed(1000); Steps2Take = mSteps; // Rotate CCW small_stepper.step(Steps2Take); irrecv.resume(); // receive the next value strip.show(); MotorAus(); } void MotorAus () { digitalWrite(A0, LOW); digitalWrite(A1, LOW); digitalWrite(A2, LOW); digitalWrite(A3, LOW); } // Fill the dots one after the other with a color void colorWipe(uint32_t c, uint8_t wait) { for (uint16_t i = 0; i < strip.numPixels(); i++) { strip.setPixelColor(i, c); strip.show(); delay(wait); } irrecv.resume(); } //Theatre-style crawling lights. void theaterChase(uint32_t c, uint8_t wait) { for (int j = 0; j < 10; j++) { //do 10 cycles of chasing for (int q = 0; q < 2; q++) { for (uint16_t i = 0; i < strip.numPixels(); i = i + 2) { strip.setPixelColor(i + q, c); //turn every third pixel on } strip.show(); delay(wait); for (uint16_t i = 0; i < strip.numPixels(); i = i + 2) { strip.setPixelColor(i + q, 0); //turn every third pixel off } } } irrecv.resume(); } //Theatre-style crawling lights. void theaterChase1(uint32_t c, uint8_t wait) { for (int j = 0; j < 2; j++) { //do 10 cycles of chasing for (int q = 0; q < 2; q++) { for (uint16_t i = 0; i < strip.numPixels(); i = i + 2) { strip.setPixelColor(i + q, c); //turn every third pixel on } strip.show(); delay(wait); for (uint16_t i = 0; i < strip.numPixels(); i = i + 2) { strip.setPixelColor(i + q, 0); //turn every third pixel off } } } irrecv.resume(); } void rainbow(uint8_t wait) { uint16_t i, j; for (j = 0; j < 256; j++) { for (i = 0; i < strip.numPixels(); i++) { strip.setPixelColor(i, Wheel((i + j) & 255)); } strip.show(); delay(wait); } irrecv.resume(); } // Slightly different, this makes the rainbow equally distributed throughout void rainbowCycle(uint8_t wait) { uint16_t i, j; for (j = 0; j < 256 * 5; j++) { // 5 cycles of all colors on wheel for (i = 0; i < strip.numPixels(); i++) { strip.setPixelColor(i, Wheel(((i * 256 / strip.numPixels()) + j) & 255)); } strip.show(); delay(wait); } irrecv.resume(); } //Theatre-style crawling lights with rainbow effect void theaterChaseRainbow(uint8_t wait) { for (int j = 0; j < 256; j++) { // cycle all 256 colors in the wheel for (int q = 0; q < 3; q++) { for (uint16_t i = 0; i < strip.numPixels(); i = i + 3) { strip.setPixelColor(i + q, Wheel( (i + j) % 255)); //turn every third pixel on } strip.show(); delay(wait); for (uint16_t i = 0; i < strip.numPixels(); i = i + 3) { strip.setPixelColor(i + q, 0); //turn every third pixel off } } } irrecv.resume(); } // Input a value 0 to 255 to get a color value. // The colours are a transition r - g - b - back to r. uint32_t Wheel(byte WheelPos) { WheelPos = 255 - WheelPos; if (WheelPos < 85) { return strip.Color(255 - WheelPos * 3, 0, WheelPos * 3); } if (WheelPos < 170) { WheelPos -= 85; return strip.Color(0, WheelPos * 3, 255 - WheelPos * 3); } WheelPos -= 170; return strip.Color(WheelPos * 3, 255 - WheelPos * 3, 0); } void sinelon() { // a colored dot sweeping back and forth, with fading trails fadeToBlackBy( leds, NUM_LEDS, 20); int pos = beatsin16(8, 0, NUM_LEDS); //speed,start-stop, leds[pos] += CHSV( gHue, 0, 192); // gHue,Multicolor 0=whit 255=rainbow fade ,Bightness } In this arrangement, I then soldered everythingAs a mounting a small glass box cut and gluedand it screwed the ArduinoNow I have the Avexir Raiden still match the color, the small caps were painted in toneand sides covered with foil, a paint was here too risky because of color flake or run behindand they now lookother day I finally found a suitable Bending Kit with which I was satisfied so I could put the last pipe penetrations and end the pipingwas again a lot of fun and so I had imagined the wholeIn the base I have tried a lot, unfortunately I forgot the picture from the final state to shoot, now everything is disassembled again.The chrome angle be exchanged for black, next week should be thereThe motherboard tray is illuminated from above, unfortunately I found no U-profile in the proposed material thickness, so I had to saw off the little trayThe U-profile even liked it so angular not so I have it adapted to the case shape and the front slightly roundedThe exhaust air under the PSU I had already cut but not considered that the angles from the base this still obscure, so I had here even adjust somethingNow I started to put all the necessary holes for the Arduino and the pumpHere the buzzer behind the PSUand the keypadfor the Acoustic sensor still set the holes for the adjustment, M1, screw and taps are on the waydetermines only the position of the SSD with the illuminated Tron and set the holesThe entire motherboard tray will be screwed to the baseNow it went last week to the painting, everything cleaned only once sanded and painted with aluminum primernow even more layers follow White with intermediate sanding and div Filling workand readythe pump bottom was painted in silverI now began to talk slowly with the assembling of, here a look under the PSUBut there were other problems,As I have planned a special cable laying, I try to find someone already since 3 months of my cable Combs in Gosu style milled but no company is a vector file to convert to a 4mm Large Hole able.At my cousin the oil pump its CNC is broken, so I had only one choice, I was last weekend 15h even stand at the CNC and oiling the cutters in 5min clock.Here times the location (a dream)and so then it startedit was the boring, 12 h laterat home arrived from Munich back in Pforzheim, I was able to everything deburring by hand and clean.I fetched from the street me some gravel. then the Combs shaken of a while to just not having to grind the insideHowever, the peaks were in clover leaf so acute that I had it all yet deburring by handfrom the outside, I have everything sanded with 600 paperand everything still manually cleaned with cleaner and then with alcoholThat's bad, that's only half of Combs that I need but I would not make it this weekend, only 3h sleep and the Case I also wanted to work on.The whole deburring and clean took me all Sunday and the Gosumodz Aliance Combs still look better: P.In any case I can finally begin the connection wiring and just have all plexiglass edge polishing or burnishing. We have on Monday again a holiday, I think by then I will make good progress. Link to comment Share on other sites More sharing options...
capten Posted May 19, 2016 Author Share Posted May 19, 2016 Hello! Go on. The missing black angle and the coolant has arrived. Thank you so on Nanoxia ! Then we go's, last week I had to paint again the socket because I forgot a hole for the Sata cable . Was unfortunately otherwise. The weekend incl. Monday I was now fully engaged embarrassed with the electrical system and the cable. So first I have optimized cable management of the Cooler Master Silencio and from Riing. All cables cut and soldered an adapter extension cord and sleeved. then the WS2812B LEDs were glued to the angle in the bottom plate, and soldered wired. Now it came to the cables for Arduino run and the corresponding components Gradually, therefore everything is finally installed. Here, the fan grill with Gosumodz washer and the buzzer behind the PSU the first cable on Arduino currently it looks quite empty from the bottom but that will come to avoid unnecessary cables and adapters in the ground I built distribution stations for Molex and fan. the solder points still ground because I have unfortunately only one centimeter square down there and even a tape over it That way, once 6x 12V and 5V for the Arduino and the power supply The Molex distributor of the way, then depends directly on the power supply I need the Arduino and their components with 2 different power sources feed since the ultrasonic sensor (or another part) otherwise causes a feedback and the entire alarm system unable to work as they should, or permanently starts. In the base were put out of top analog RGBW LEDs which then illuminate the white Plexiglas and the interior. so gradually it is taking shape Now I put the cable and sleeve for the mainboard supply since the crimping tool is not worth much I had to again solder all pins and then slide into the sleevs Now I have only times the pinout of the Cooler Master listed cord and plug away because you can not buy the 10Pin and 18pin. and so it looks like in the ground no place for sleevs remains why look down just short out be sleeved. But since they are quite rigid I from bottom still Combs glued through which the cables can be laid at right angles. These Combs I recently sawed from a faulty milling. Since the router is broken. The I could now make good use for these purposes. here's the difference Slowly I should have thought of everything in the base, so I work my way slowly upward. Now it was only clean the Plexiglas and where necessary edge polish satin finishing or. Unfortunately, I had eventually ruined me with a dirty drill or screw the threaded and could also clean the threads befor after the cable for the SSD still drawn I want to put the 4 PCIe cables directly from the GPUs in the PSU, I now unfortunately become aware that I have released there only 2 slots. I could arrange that I get a Cooler Master V850 or the like. Unfortunately, until next week, but that's why I'm still going to continue to move the Main board cable. The V750 that I have now left I will soon be giving away on Facebook, I think when reaching the next favorite brand. The finish is excellent and keeps bomb. That would be unique Made by CapTen: D The second charge cable Combs are also arrived yesterday from my cousin that I have now again deburring and clean: sad: Next update coming ..... Link to comment Share on other sites More sharing options...
capten Posted June 6, 2016 Author Share Posted June 6, 2016 Hi everyone! My last update, the project is ready but the Finalpics I'll do tomorrow. Here now only times all work I've done the last few weeks. Sorry that took me so long posted anything but I was really afraid not to be ready in time. So I try to be brief, there are still quite a lot of photos and more than half I have already deleted. : D If any ambiguities are just ask okay? Under the SSD Tron I have placed a small RGB Strip, connected to the LEDs in the base. then came from my cousin the second charge cable Combs. Again, the same program as the last time, all the cut / break, deburring, sanding and clean. then it went to the sleeving on. Times as info that cable velvet Sleeve'm not getting through Combs through why I prefer all sleevs first and then push the cable through. This is very good because the PLX sleevs are quite rigid. First, the 8 and 4 pin ATX cable and then the 24 pin cable, do not forget the small cover which I built for carrying now came the worst, all the cables together. For this I have number to each cable and after many corrections and try with hot glue so I fixed the second base plate at all it get Unfortunately, nothing helped, I had to cut the lower base plate, due to a half centimeter good for the entire bottom plate I have another 4 holes set as the 2mm aluminum but was not as robust as expected Then I put all power and reset cable and last but not least the PCIe cable, unfortunately not quite the way I wanted but I think that can be so by go XD The entire cable management cost me a total of 3 weeks now. Daily 6h after work and on weekends and holidays also determined 12 hours a day. And I thought I do it on a weekend finished XD. Now it was time to polish all edges: just like the dice I have all the edges with a sword Cutta peeled and then ground from 320 to 800 grit sandpaper. After that two polishing pastes and finally with pure polish. I had tried to talk to a small piece to see how far fits the design and have this now transferred to the sliding door and rear wall for this to bend then. Now cut and then bent ready the small pieces for back ready polished and then glued together With the sidewalls exactly the same, all edges polished the Avexir neckline satin finish. I hope you can imagine how long it takes all this take? Okay, as expected, there was the cable laid course but a damage to the paint, mainly the outer edge. So I had a good piece again completely wrap in foil to be painted around the defects in. With a paintbrush unfortunately dissolving the color and pushes only the paint down again and a white pen does not have the same color as my paint. Who's always there? Then came the worst part: remove the foil! Now I had to with the utmost care all behind moving sanding dust and the polishing paste to remove without scratching the Plexiglas. The glossy black is there really sensitive. so now that all plates were cleaned, I also stick to one another Next we went to the upper side parts I had last year already two logos cut from 3mm Plexiglas and polished. This I have now glued to the side wall only times exactly aligned the logos and then taken up with tape so that they can no longer from slipping Then measured the positions on the front and set with tape guide lines then made the adhesive on the logos and adhered to the front and now again: how I start already said, I have the dice all have slightly rearranged so they do not look so boring cubes. How do you like that ? :crazy: have been doing mostly oriented at me 15 ° well as the sleeves are so rigid I ever had to come up with the 24Pin ATX cable behind the tray little problems around the corner, so I did it briefly bent me a small retainer. But this I wanted to make so and so to put a decal of the sponsor there. It fulfills the same a double sense;-) This I then glued back on the tray. The cable I have so long fixed with an aluminum bracket for the glue to dry. Link to comment Share on other sites More sharing options...
capten Posted June 6, 2016 Author Share Posted June 6, 2016 on Friday I thought that Silencio see behind two 3mm Plexiglas and 2mm aluminum frame from something boring, so I have the frame summarily cut off so that further extend the rotor blades from the Caseso without damage was also not, so I concerned shall points again painted.the small curved pieces for the back I attached with a spacer with the screws CaseNo I would not flush, the distance is chosen deliberately because it would have the gap either way perceived and had a bond the screws obscuredlast week, I have created the missing decals and was able to pick up on the weekend me.I had weeded again everything yourself.This comes on the rear window completely downtake the Avexir lettering, 1.6 mm character height I had normal Stickersand some other things that can be seen later on the Finalpics;-)the lighting of the hardware itself was somehow not quite as I expected, so I decided to TE-block from the top with a small strip to illuminate thus also equal to the GPU backplates are illuminated with.So even a small angle cut, primed and paintedthe current then immediately swiped from the top S-Light, the cable is thus exactly behind the ATX connectors and is not visibleNow It's something offtopic further.For photo shoot I wanted something special but a suitable museum I did not to me and a jewelry shop / jeweler as a painter I need to ask not even.So I got short hand out my bedroom wall redesigned.wallpaper removedcompletely plastering, primed and painted two times whitethen centrally glued a snakeskin wallpaperfits to or vice versa, I have this weekend even built me a stand for the case and the keyboard, mouse.The stand for the Case is a transport box which I can buckle with foil as on a Euro pallet, the case then.First the hardware store all materials Bought, the wallpaper I had ordered last week on the Internetfrom old remnants I cut a few strips for the bottomthen glued together and to the groundAngle cut and primedthe whole box glued to each other and once primedangel paint in silverThe stand for the keyboard exactly tailored and everything glued to each othermounted on the box still Tension Latchesand then also primed and paintedcorresponding areas of the object also paintedand then glued to finish off the wallpaper and then the angle on the edgeOkay "thats it".System I have filled yesterday and leaktest made everything alright.Tomorrow I will make the final pics and will then latest day after tomorrow post! :-) Link to comment Share on other sites More sharing options...
capten Posted June 8, 2016 Author Share Posted June 8, 2016 So now we go! I made a rough selection of all images but because I have nothing to hide and so a lot of work in this project lies, gets her now photos from all possible perspectives accurately as various lighting. I hope I did not forget any details. "Light Glass" deactivated by day "Light Glass" is switched by night in blue in white Link to comment Share on other sites More sharing options...
capten Posted June 8, 2016 Author Share Posted June 8, 2016 "Light Glass" by night with different lighting effectsAlarm mode(red LED)while the door opens (orange LED)and a few rainbow effectsOkay, it was nice!I'll tinker just a video for the whole hope to get that in 2 weeks out.So see you soon! :thumbsup: Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.