Salvius Robot Project: December 2011

Salvius Robot Project

The Open Source Humanoid Robot

proof:pdf xmp.did:F87F11740720681180838E4FEC0BBEE0 xmp.iid:F87F11740720681180838E4FEC0BBEE0 uuid:a82416aa-8f86-e849-8a8d-10757c227e64 xmp.iid:F77F11740720681180838E4FEC0BBEE0 xmp.did:F77F11740720681180838E4FEC0BBEE0 uuid:a82416aa-8f86-e849-8a8d-10757c227e64 proof:pdf saved xmp.iid:F77F11740720681180838E4FEC0BBEE0 2011-07-15T18:59:45-07:00 Adobe Illustrator CS5 / saved xmp.iid:F87F11740720681180838E4FEC0BBEE0 2011-07-15T19:12:41-07:00 Adobe Illustrator CS5 / 2011-07-15T19:12:41-07:00 Adobe Illustrator CS5 2011-07-15T19:12:41-07:00 2011-07-15T19:12:41-07:00 256 256 JPEG /9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgBAAEAAwER AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE 1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp 0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo +DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A9U4q7FXYq7FXYq7FXYq7 FXYq7FVOa4ghFZXCex6/diqDk1qHpDG0h8fsjFUM+p37/Z4Rj2FT+NcVUWmvHNWuH37KeP6sKqZi B+0zN8zirvQj8MVd6EfhirhFT7LMvyOKqqzXiGq3D/7I8v14qqpqd+n2gkg+4/hTAqJj1mA7TI0R 8ftD8P6YqjYriGYVicOPY7/diq/FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYqh7m/t rfZ2q/ZF3OKpdNqN5Nsv7lPbdvvxVDCNa8m+Jj1LbnCq7FXYq7FXYq7FXYq7FXYq7FXYqt9Na8lq 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 Adobe PDF library 9.90 image/svg+xml 1 False False 130.000000 130.000000 Pixels Cyan Magenta Yellow Default Swatch Group 0

image/svg+xml

image/svg+xml

Salvius robot preparing for balancing and gyroscope

(No comments)

This modification to Salvius's drive base is a prelude to a possible gyroscopic balencing system where the robot stays balanced on two adjacent wheels similar to the Segway PT invented by Dean Kamen. Although this will create a issue where if the robot runs of power it will simply fall over if it is not secured. One solution for that would be a pair of retractable stabilizers that could fold down and lock in place so that the robot could conserve power while remaining stationary for long periods of time.


One of the advantages of building the robot horizontally is that it can have more maneuverability in tight spaces as this new design greatly decreases the circumference of the robot's base. The reduced circumference also has contributed to a reduction of about 5 kg from the overall weight of the robot.

It is obvious at this point in the robot's construction that weight will be a major issue. At the moment, one large motor and the battery make up approximately 50% of the robot's mass. As a solution I plan on drilling out holes in many spots to remove as much material as possible without sacrificing structural integrity.


Turn on Computers using a Motion Sensor

(1 comment)

In a previous post (http://salviusrobot.blogspot.com/2011/12/salvius-robot-motion-detector.html) an arduino microcontroller was used to close a relay to turn on a light when motion was detected. Now the same relay has been connected to the on switch of the robot's computer (a recycled PC) to turn the computer on, thus waking up the robot when someone walks into the robot's visual range.

Red and black wires connected to on switch.

Computer with keyboard removed to attach wires.
 In a previous post instructions were provided on how to remove parts on the laptop to modify its inner parts (http://salviusrobot.blogspot.com/2011/11/removing-lenovo-ideapad-s10e-lid-switch.html).
Lenovo Ideapad S10e on switch with red and black wire soldered on.

Salvius robot motion detector


Salvius can now "wake up" if someone walks into the room. This motion sensing feature allows the robot to conserve power by shutting down many of its primary systems and only turning on when someone is in the room with it. This is also a handy security feature considering that if the robot is on you can then connect to it if you have a web enabled device and see what it is seeing. The auto-activation system for Salvius uses an Arduino Uno, a seeeduino relay shield, and a PIR sensor. The code used in the video has been added at the bottom of this page.

Here is a quick demonstration of the new sensor works.


This is the code that was used in the video (above):



// Programmer: Gunther Cox
// http://salviusrobot.blogspot.com
// Created: 12/25/11
// Last Modified: 12/25/11
// Hardware setup instructions:
// Plug relay shield directly into arduino so that all pins line up.
// Attach 9 volt power supply to GND and +9V plugs of relay shield.
// PIR + to arduino 5V, PIR - to arduino GND, PIR OUT to HUB2 D3.

int relayPin1 = 4; // relay connected to digital pin 4 (D3 on relay shield)
int relayPin2 = 5; // relay connected to digital pin 5 (D2 on relay shield) (not used)
int relayPin3 = 6; // relay connected to digital pin 6 (D1 on relay shield) (not used)
int relayPin4 = 7; // relay connected to digital pin 7 (D0 on relay shield) (not used)
int pirPin = 2;  // choose the input pin (for PIR sensor)
int pirState = LOW; // we start, assuming no motion detected
int val;            // variable for reading the pin status
int pirMode = 0;    // determines if the relay closed already (0 = not closed yet)

void setup() {
  //the time we give the sensor to calibrate (10-60 secs according to the datasheet)
  pinMode(pirPin, INPUT);        // declare sensor as input
  pinMode(relayPin1, OUTPUT);    // declare relay as output
  digitalWrite(relayPin1, LOW);
  digitalWrite(pirPin, LOW);
  pirState = digitalRead(pirPin); // read the initial state
  delay(60000);                   // pause before calibrating
}

void loop() {
  val = digitalRead(pirPin);  // read input value and store it in val
  if(digitalRead(pirPin) == HIGH) {
    if (pirMode == 0) {
      if (val != pirState) {            //look for 2 inconsistant readings
          // turn main computer on
        digitalWrite(relayPin1, HIGH);  // sets relay1 on
        delay(1000);                    // waits for 1 second
        digitalWrite(relayPin1, LOW);   // sets relay1 off
        pirMode = pirMode + 1;   // relay has been on      
        //delay(50);
      }      
    }
  }
}

Setup for the PIR motion detector.

About the PIR sensor: