Recent Changes

Today

  1. page wm edited ... ROUTE - Union Station to B&B : {WashingtonMap2BB.jpg} {JaleoReservation.jpg} D.C. p…
    ...
    ROUTE - Union Station to B&B :
    {WashingtonMap2BB.jpg}
    {JaleoReservation.jpg}
    D.C. police announced Friday the following roads will be closed from 3 a.m. to about 6 p.m. on Saturday, Jan. 21:
    3rd St. NW, from Constitution Avenue NW, to C St. SW
    (view changes)
    8:51 am
  2. 8:51 am
  3. page wm edited ... ROUTE of the March: {WomensMarchRoute.jpg} ROUTE - Union Station to B&B : {Washingto…
    ...
    ROUTE of the March:
    {WomensMarchRoute.jpg}
    ROUTE - Union Station to B&B :
    {WashingtonMap2BB.jpg}
    D.C. police announced Friday the following roads will be closed from 3 a.m. to about 6 p.m. on Saturday, Jan. 21:
    (view changes)
    8:38 am
  4. page wm edited INFO: Women's March DC ROUTE: B&B to START: {BB-to-Start.jpg} ROUTE of the March: {Wo…

    INFO: Women's March DC
    ROUTE: B&B to START:
    {BB-to-Start.jpg}
    ROUTE of the March:
    {WomensMarchRoute.jpg}

    {WashingtonMap2BB.jpg}
    D.C. police announced Friday the following roads will be closed from 3 a.m. to about 6 p.m. on Saturday, Jan. 21:
    (view changes)
    8:37 am
  5. file BB-to-Start.jpg uploaded
    8:37 am
  6. 8:36 am
  7. page wm edited INFO: Women's March DC {WashingtonMap2BB.jpg} D.C. police announced Friday the following roads …
    INFO: Women's March DC
    {WashingtonMap2BB.jpg}
    D.C. police announced Friday the following roads will be closed from 3 a.m. to about 6 p.m. on Saturday, Jan. 21:
    3rd St. NW, from Constitution Avenue NW, to C St. SW
    Independence Ave. SW, from First St. SW, to 6th St. SW
    Maryland Ave. SW, from First St. SW, to Independence Ave. SW
    4th St. NW, from Constitution Ave. NW, to C St. SW
    There will also be rolling street closures about 1 p.m. along the march route
    West on Independence Ave. SW, from 3rd St. SW, to 14th St. SW
    North on 14th St. SW, to Constitution Ave. NW
    West on Constitution Ave. NW, to 17th St. NW, where protesters will disband

    (view changes)
    7:53 am
  8. 7:53 am
  9. page YourSmartArduino edited YourSmartArduino We are working on a Arduino Kit that has 6 or 8 "Lessons" using vari…

    YourSmartArduino
    We are working on a Arduino Kit that has 6 or 8 "Lessons" using various sensors and actuators that has the Arduino (our YourDuino RoboRED) pre-programmed with 8 options that are selected with 3 jumpers (Or buttons, or IR Remote). The kit can run on a student's desk with only a 9V 1 amp power supply (adds $2 to the cost) or a battery case with 6 AA batteries. It starts with a multipurpose shield plugged into the RoboRED that looks like this:
    {http://internationalschoolphotos.com/webphotos/EasyBoard3.jpg}
    The next level has the student attach external cables and devices like servomotors and pushbuttons and a breadboard, to become familiar with this type of hardware. It also has an IR remote that can control some functions.
    After that level of learning, the Arduino and sensors/actuators can be use WITH a computer to start to learn the Arduino IDE environment and Arduino programming.
    EARLY code example:
    (This version does not use much Arduino memory):
    Sketch uses 5,614 bytes (17%) of program storage space. Maximum is 32,256 bytes.
    Global variables use 487 bytes (23%) of dynamic memory, leaving 1,561 bytes for local variables. Maximum is 2,048 bytes.
    /* YourSmartDuino-EM
    - WHAT IT DOES: Provides several preprogrammed options for users
    - Uses the KEYES Easy Module Shield V1
    - SEE the comments after "//" on each line below
    - CONNECTIONS: KEYES Easy Module Shield V1
    D2 Pushbutton SW1
    D3 Pushbutton SW2
    D4 DHT11 Temperature/Humidity Sensor
    D5 Buzzer (Really a beeper)
    D6 IR Receiver
    D7 3-pin D7
    D8 3-pin D8
    D9 RGB LED
    D10 RGB LED
    D11 RGB LED
    D12 LED4 (RED)
    D13 LED3 (BLUE)
    A0 Rotation (10K Pot)
    A1 Light (Photoresistor)
    A2 LM35 (Temperature Sensor)
    A3 A3 (3-Pin)
    A4 SDA
    A5 SCL
    -
    -
    - V1.31 11-22-2016 pitches.h
    Questions: terry@yourduino.com */
    /*-----( Import needed libraries )-----*/
    //#include <Servo.h> // Comes with Arduino IDE
    #include <OneWire.h>
    #include <DallasTemperature.h>
    #include <LedFlasher.h> // From Nick Gammon
    #include<ButtonV2.h>
    #include "pitches.h" // for Tone library
    /*-----( Declare Constants and Pin Numbers )-----*/
    // NOTE: PWM Pins = 3,5,6,9,10,11
    #define OPTION_SEL_1_PIN 2 // Option Select pins
    #define OPTION_SEL_2_PIN 3 // Pins select options 0..7
    #define SWITCH1_PIN 2
    #define SWITCH2_PIN 3
    #define BUZZER_PIN 5 // This is really a tone beeper
    #define IR_RECEIVER_PIN 6
    #define D7_PIN 7
    #define STROBE_LED_PIN 7
    #define ONEWIRE_PIN 7
    #define D8_PIN 8
    #define SERVO_PIN 8
    #define RGB_RD_PIN 9 // PWM disabled by servo
    #define RGB_GN_PIN 10
    #define RGB_BL_PIN 11
    #define DIMMABLE_LED_PIN 9
    #define RED_LED_PIN 12 // "LED2 Red"
    #define ONBOARD_LED_PIN 13 // "LED3 Blue"
    #define ROTATION_PIN A0 // Analog inputs from Potentiometer etc.
    #define LIGHT_SENSOR_PIN A1 // Photoresistor
    #define TEMPERATURE_SENSOR A2 // LM35
    #define A3_PIN A3 // 3-pin connector
    #define I2C_SDA_PIN A4 // I2C Interface OR Joystick
    #define I2C_SCL_PIN A5
    // NOTE: Pins A4 and A5 are used for I2C communication to LCD Display
    #define ForEver TRUE // For use in looping
    #define ServoMIN 20 // Don't go to very end of servo travel
    #define ServoMAX 160 // which may not be all the way from 0 to 180.
    /*-----( Declare objects )-----*/
    //Servo myservo; // create servo object to control a servo
    /* Set up a oneWire instance to communicate with any OneWire device*/
    OneWire ourWire(ONEWIRE_PIN);
    /* Tell Dallas Temperature Library to use oneWire Library */
    DallasTemperature sensors(&ourWire);
    int Led13OnTime = 100;
    int Led13OffTime = 900;
    LedFlasher LED13 (ONBOARD_LED_PIN, Led13OffTime, Led13OnTime); // OffTime, OnTime
    ButtonV2 BlueButton;
    /*-----( Declare Variables )-----*/
    int OptionNumber; // Option as defined by the pin selects
    int AnalogInputValue; // Analog values from 0..1023
    unsigned long StrobeLastMs ;
    unsigned long StrobeLedOnTime = 10L ; // Variables for Strobe LED
    unsigned long StrobeLedOffTime = 1000L ;
    boolean InStrobeTime = FALSE;
    boolean StrobeIsOn = FALSE;
    int ServoPosition ;
    void setup() /****** SETUP: RUNS ONCE ******/
    {
    Serial.begin(115200); // Start up the Serial Monitor
    Serial.println();
    Serial.println("Your Smart Duino STARTUP");
    // NOTE: Servo and OneWire libraries set pinMode for their pins
    pinMode(RGB_RD_PIN, OUTPUT);
    pinMode(RGB_GN_PIN, OUTPUT);
    pinMode(RGB_BL_PIN, OUTPUT);
    pinMode(STROBE_LED_PIN, OUTPUT);
    pinMode(ONBOARD_LED_PIN, OUTPUT);
    pinMode(SERVO_PIN, OUTPUT);
    pinMode(RED_LED_PIN, OUTPUT);
    pinMode(OPTION_SEL_1_PIN, INPUT_PULLUP);
    pinMode(OPTION_SEL_2_PIN, INPUT_PULLUP);
    // myservo.attach(SERVO_PIN); // attaches the servo to the servo object
    BlueButton.SetStateAndTime(LOW);
    /*-----( Read the 3 Option pins and calculate OptionNumber 0..7 )------*/
    OptionNumber = 0;
    if (digitalRead(OPTION_SEL_1_PIN) == LOW) OptionNumber += 1 ;
    if (digitalRead(OPTION_SEL_2_PIN) == LOW) OptionNumber += 2 ;
    Serial.print ("From Option Pins: OptionNumber = ");
    Serial.println(OptionNumber);
    delay(1000);
    }//--(end setup )---
    void loop() /****** LOOP: RUNS CONSTANTLY ******/
    {
    switch (OptionNumber)
    {
    case 0:
    /*-------------( Option 0: Blinks Morse Code "HI" on pins 12 and 13. )---------------
    User sees blink on onboard LED pin 13.
    User connects buzzer brick to pin 13 so Morse is audible
    Morse is discussed. Digital is discussed. Look at cables and colors.
    User uses a cable to connect bright LED brick to pin 12
    */
    {
    Serial.println("Option 0");
    do
    {
    BlinkHi();
    } while (ForEver); // Loop here "ForEver" or RESET
    } // END case
    case 1:
    /*-------------( Option 1: User connects different switches to pin 2 )---------------
    User pushes button, ON-OFF, TRUE-FALSE, 1-0, HIGH-LOW discussed.
    Other bricks are connected to pin 2: Tilt, Vibration, Motion Detect, Light, Sound
    Bare wires connected to pin 2; conductors/insulators discussed.
    Bright LED reconnected to pin 12: BLINKS when switch is ON.
    */
    {
    Serial.println("Option 1");
    do
    {
    if (digitalRead(SWITCH1_PIN) == 0)
    {
    digitalWrite(STROBE_LED_PIN, HIGH);
    delay(50);
    }
    else
    {
    digitalWrite(STROBE_LED_PIN, LOW);
    }
    LED13.update ();
    } while (ForEver); // Loop here "ForEver" or RESET
    }// END case
    case 2:
    /*--------------( Option 2: Analog variable from user's Potentiometer controls" )----------------
    Dimming of Bright LED on Pin 11
    Strobe blink speed on Bright LED on Pin 12
    Servo Position on pin 3
    */
    {
    Serial.println("Option 2");
    do
    {
    AnalogInputValue = analogRead(ROTATION_PIN); // Read the position of the Potentiometer
    // Serial.print("Analog Value = ");
    // Serial.println(AnalogInputValue);
    analogWrite(DIMMABLE_LED_PIN, AnalogInputValue / 4);
    /*-----------( Set up and control strobe frequency and duration )-----------------------------*/
    StrobeLedOffTime = (1023 - AnalogInputValue) / 2L; // Set Strobe parameters from Analog Input
    StrobeLedOnTime = StrobeLedOffTime / 10L;
    if (InStrobeTime)
    {
    if
    (
    ((StrobeLastMs + StrobeLedOnTime) < millis())
    &&
    StrobeIsOn
    )
    {
    StrobeIsOn = FALSE;
    digitalWrite(STROBE_LED_PIN, LOW);
    }
    if
    (
    ((StrobeLastMs + StrobeLedOnTime + StrobeLedOffTime) < millis())
    &&
    ! StrobeIsOn
    )
    {
    InStrobeTime = FALSE;
    }
    } // END InStrobeTime
    else // Begin another Strobe cycle
    {
    StrobeLastMs = millis();
    InStrobeTime = TRUE;
    digitalWrite(STROBE_LED_PIN, HIGH);
    StrobeIsOn = TRUE;
    }
    /*-----------( Set Servo position from Potentiometer value and Send Servo Position to Servo )--------------------*/
    // ServoPosition = map((1023 - AnalogInputValue), 0, 1023, ServoMIN , ServoMAX);
    // myservo.write(ServoPosition); // tell servo to go to position
    ServoPosition = map((1023 - AnalogInputValue), 0, 1023, 800 , 2000);
    PointServo(ServoPosition);
    LED13.update ();
    } while (ForEver); // Loop here "ForEver" or RESET
    } // END case
    case 3:
    {
    Serial.println("Option 3");
    do
    {
    byte type = BlueButton.CheckButton(SWITCH1_PIN); // current time and length of time to press the button as many times as you can ie. 1.5 seconds
    switch (type)
    {
    case WAITING:
    break;
    case PRESSED:
    Serial.println("pressed 1 time");
    break;
    case DOUBLE_PRESSED:
    Serial.println("pressed 2 times");
    break;
    case MULTI_PRESSED:
    Serial.println("pressed 3 times");
    break;
    case HELD:
    Serial.println("Button HELD");
    break;
    }
    LED13.update ();
    } while (ForEver); // Loop here "ForEver" or RESET
    } // END case
    case 4:
    {
    Serial.println("Option 4");
    do
    {
    BlinkHi();
    } while (ForEver); // Loop here "ForEver" or RESET
    } // END case
    } // End switch
    }//--(end main loop )---
    /*-----( Declare User-written Functions )-----*/
    void BlinkHi()
    {
    int i;
    for (i = 0; i < 4; i++)
    {
    digitalWrite(ONBOARD_LED_PIN, HIGH); // turn the ONBOARD_LED_PIN on (HIGH is the voltage level)
    // Check if the user has pressed buttons
    if (digitalRead(SWITCH2_PIN) == LOW) {
    digitalWrite(STROBE_LED_PIN, HIGH); // turn the STROBE_LED_PIN on (HIGH is the voltage level)
    }
    if (digitalRead(SWITCH1_PIN) == LOW) {
    tone(BUZZER_PIN, 800);
    }
    delay(100); // wait for 1/10 second
    digitalWrite(ONBOARD_LED_PIN, LOW); // turn the LED off by making the voltage LOW
    digitalWrite(STROBE_LED_PIN, LOW); // turn the LED off by making the voltage LOW
    noTone(BUZZER_PIN); // turn the buzzer off by making the voltage LOW
    delay(200); // wait for a second, watch the Dark
    }
    delay(200);
    for (i = 0; i < 2; i++)
    {
    digitalWrite(ONBOARD_LED_PIN, HIGH); // turn the LED on (HIGH is the voltage level)
    // Check if the user has pressed buttons
    if (digitalRead(SWITCH2_PIN) == LOW) {
    digitalWrite(STROBE_LED_PIN, HIGH); // turn the STROBE_LED_PIN on (HIGH is the voltage level)
    }
    if (digitalRead(SWITCH1_PIN) == LOW) {
    tone(BUZZER_PIN, 800);
    }
    delay(100); // wait for 1/10 second
    digitalWrite(ONBOARD_LED_PIN, LOW); // turn the LED off by making the voltage LOW
    digitalWrite(STROBE_LED_PIN, LOW); // turn the LED off by making the voltage LOW
    noTone(BUZZER_PIN); // turn the buzzer off by making the voltage LOW
    delay(200); // wait for a second, watch the Dark
    }
    delay(1000);
    }
    boolean IsTime(unsigned long *timeMark, unsigned long timeInterval)
    {
    if (millis() - *timeMark >= timeInterval) {
    *timeMark = millis();
    return true;
    }
    return false;
    }
    void PointServo(int ServoAngle)
    {
    for (int i = 0; i < 3; i++) // Send the pulse 10 times
    {
    digitalWrite(SERVO_PIN, HIGH);
    delayMicroseconds(ServoAngle);
    digitalWrite(SERVO_PIN, LOW);
    delay(1);
    }
    }// PointServo end
    /*---------------------------*/
    //*********( THE END )***********
    zz

    (view changes)
    6:42 am

More