Sexual harassment is a widespread and dangerous problem, often localized to public transportation (walking, riding the train or subway, cycling) and targeted at women. Furthermore, victims of harassment are rarely believed or supported. In response to this, I made a five-page comic to educate those who are unaware of what street harassment really means. I wrote about harassment as an international issue, my own and others’ experiences, detailed the harm of harassment, and concluded with tips for bystanders.
Harassment takes a variety of forms (stalking, catcalling, groping, etc.), but it is always rooted in power dynamics and control―never a compliment, always a threat. Obviously, this is a heavy subject surrounded by misconception. My goal with this comic was to validate the experiences of victims, and provide them with a resource that could be given to others.
#include <Wire.h>
#include <Adafruit_MotorShield.h>
Adafruit_MotorShield AFMS = Adafruit_MotorShield();
Adafruit_DCMotor *myMotor = AFMS.getMotor(1);
//Adafruit_DCMotor *myMotor = AFMS.getMotor(2);
void setup() {
AFMS.begin();
}
void loop() {
myMotor->setSpeed(255);
myMotor->run(FORWARD);
delay(1000);
}
LED Strips are individually addressable ribbons of RGB (red green blue) lights, meaning that each light on the ribbon can be controlled by itself and give off any color on the visible color spectrum. Every light on the strip has its own chip onboard that processes commands given to it by the Arduino.
#include <Adafruit_NeoPixel.h> Adafruit_NeoPixel strip = Adafruit_NeoPixel(30, 6, NEO_GRB + NEO_KHZ800); void setup() { strip.begin(); strip.show(); } void loop() { for (int i = 0; i < strip.numPixels(); i++) { strip.setPixelColor(i, strip.Color(255, 0, 0)); } strip.show(); delay(100); }
LED Strips are individually addressable ribbons of RGB (red green blue) lights, meaning that each light on the ribbon can be controlled by itself and give off any color on the visible color spectrum. Every light on the strip has its own chip onboard that processes commands given to it by the Arduino.
#include <Adafruit_NeoPixel.h> Adafruit_NeoPixel strip = Adafruit_NeoPixel(30, 6, NEO_GRB + NEO_KHZ800); void setup() { strip.begin(); strip.show(); } void loop() { for (int i = 0; i < strip.numPixels(); i++) { strip.setPixelColor(i, strip.Color(255, 0, 0)); } strip.show(); delay(100); }
Ultrasonic sensors are distance sensors that use sound waves to detect how far away an object is. They send out high frequency bursts of sound and listen for its echo. They then determine how far away the object is based on how long it takes for the sound to return to the sensor. This variety requires an Arduino library to operate.
#include <NewPing.h> NewPing mysensor(5, 6, 200); void setup() { Serial.begin(9600); } void loop() { int pingTime = mysensor.ping(); int distance = mysensor.ping_in(); int distance_cm = mysensor.ping_cm(); Serial.println(distance); }
Servos are specialized motors that support precise control. Rather than spinning off to oblivion like a motor, servos let the designer specify exactly where they want the object to rotate to. Most common servos allow for 180º of rotation.
#include <Servo.h> Servo myservo; void setup() { myservo.attach(9); } void loop() { int val = analogRead(A0); val = map(val, 0, 1023, 0, 179); myservo.write(val); delay(15); }