0% found this document useful (0 votes)
15 views12 pages

Traffic Merged

Uploaded by

vikash yadav
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views12 pages

Traffic Merged

Uploaded by

vikash yadav
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

Traffic light control

#define m1p 2
#define m2p 3
#define m3p 4
#define m4p 5
#define m5p 6
#define m6p 7
#define m7p 8
#define m8p 9
#define m9p 10
#define m10p 11
#define m11p 12
#define m12p 13

int DELAY1 = 100;


int DELAY2 = 50;

void setup() {
pinMode(m1p, OUTPUT);
pinMode(m2p, OUTPUT);
pinMode(m3p, OUTPUT);
pinMode(m4p, OUTPUT);
pinMode(m5p, OUTPUT);
pinMode(m6p, OUTPUT);
pinMode(m7p, OUTPUT);
pinMode(m8p, OUTPUT);
pinMode(m9p, OUTPUT);
pinMode(m10p, OUTPUT);
pinMode(m11p, OUTPUT);
pinMode(m12p, OUTPUT);
}

void loop() {
// First pattern
digitalWrite(m1p, HIGH);
digitalWrite(m2p, LOW);
digitalWrite(m3p, LOW);
digitalWrite(m4p, LOW);
digitalWrite(m5p, LOW);
digitalWrite(m6p, HIGH);
digitalWrite(m7p, LOW);
digitalWrite(m8p, LOW);
digitalWrite(m9p, HIGH);
digitalWrite(m10p, LOW);
digitalWrite(m11p, LOW);
digitalWrite(m12p, HIGH);
delay(DELAY1);

// Second pattern
digitalWrite(m1p, LOW);
digitalWrite(m2p, HIGH);
digitalWrite(m3p, LOW);
digitalWrite(m4p, LOW);
digitalWrite(m5p, LOW);
digitalWrite(m6p, HIGH);
digitalWrite(m7p, LOW);
digitalWrite(m8p, LOW);
digitalWrite(m9p, HIGH);
digitalWrite(m10p, LOW);
digitalWrite(m11p, LOW);
digitalWrite(m12p, HIGH);
delay(DELAY2);

// Third pattern
digitalWrite(m1p, LOW);
digitalWrite(m2p, LOW);
digitalWrite(m3p, HIGH);
digitalWrite(m4p, HIGH);
digitalWrite(m5p, LOW);
digitalWrite(m6p, LOW);
digitalWrite(m7p, LOW);
digitalWrite(m8p, LOW);
digitalWrite(m9p, HIGH);
digitalWrite(m10p, LOW);
digitalWrite(m11p, LOW);
digitalWrite(m12p, HIGH);
delay(DELAY1);

// Fourth pattern
digitalWrite(m1p, LOW);
digitalWrite(m2p, LOW);
digitalWrite(m3p, HIGH);
digitalWrite(m4p, LOW);
digitalWrite(m5p, HIGH);
digitalWrite(m6p, LOW);
digitalWrite(m7p, LOW);
digitalWrite(m8p, LOW);
digitalWrite(m9p, HIGH);
digitalWrite(m10p, LOW);
digitalWrite(m11p, LOW);
digitalWrite(m12p, HIGH);
delay(DELAY2);

// Fifth pattern
digitalWrite(m1p, LOW);
digitalWrite(m2p, LOW);
digitalWrite(m3p, HIGH);
digitalWrite(m4p, LOW);
digitalWrite(m5p, LOW);
digitalWrite(m6p, HIGH);
digitalWrite(m7p, HIGH);
digitalWrite(m8p, LOW);
digitalWrite(m9p, LOW);
digitalWrite(m10p, LOW);
digitalWrite(m11p, LOW);
digitalWrite(m12p, HIGH);
delay(DELAY1);

// Sixth pattern
digitalWrite(m1p, LOW);
digitalWrite(m2p, LOW);
digitalWrite(m3p, HIGH);
digitalWrite(m4p, LOW);
digitalWrite(m5p, LOW);
digitalWrite(m6p, HIGH);
digitalWrite(m7p, LOW);
digitalWrite(m8p, HIGH);
digitalWrite(m9p, LOW);
digitalWrite(m10p, LOW);
digitalWrite(m11p, LOW);
digitalWrite(m12p, HIGH);
delay(DELAY2);

// Seventh pattern
digitalWrite(m1p, LOW);
digitalWrite(m2p, LOW);
digitalWrite(m3p, HIGH);
digitalWrite(m4p, LOW);
digitalWrite(m5p, LOW);
digitalWrite(m6p, HIGH);
digitalWrite(m7p, LOW);
digitalWrite(m8p, LOW);
digitalWrite(m9p, HIGH);
digitalWrite(m10p, HIGH);
digitalWrite(m11p, LOW);
digitalWrite(m12p, LOW);
delay(DELAY1);

// Eighth pattern
digitalWrite(m1p, LOW);
digitalWrite(m2p, LOW);
digitalWrite(m3p, HIGH);
digitalWrite(m4p, LOW);
digitalWrite(m5p, LOW);
digitalWrite(m6p, HIGH);
digitalWrite(m7p, LOW);
digitalWrite(m8p, LOW);
digitalWrite(m9p, HIGH);
digitalWrite(m10p, LOW);
digitalWrite(m11p, HIGH);
digitalWrite(m12p, LOW);
delay(DELAY2);
}

Tripple led

#define b 6
#define g 10
#define r 9

void setup() {
pinMode(r, OUTPUT);
pinMode(g, OUTPUT);
pinMode(b, OUTPUT);
digitalWrite(r, HIGH);
digitalWrite(b, LOW);
digitalWrite(g, LOW);
}

int rVal;
int gVal;
int bVal;
void loop() {
#define delay1 10
rVal = 255;
gVal = 0;
bVal = 0;

// Red to Green transition


for (int i = 0; i < 255; i++) {
rVal -= 1;
gVal += 1;
analogWrite(r, rVal);
analogWrite(g, gVal);
delay(delay1);
}

// Green to Blue transition


rVal = 0;
gVal = 255;
bVal = 0;
for (int i = 0; i < 255; i++) {
gVal -= 1;
bVal += 1;
analogWrite(g, gVal);
analogWrite(b, bVal);
delay(delay1);
}

// Blue to Red transition


rVal = 0;
gVal = 0;
bVal = 255;
for (int i = 0; i < 255; i++) {
bVal -= 1;
rVal += 1;
analogWrite(b, bVal);
analogWrite(r, rVal);
delay(delay1);
}
}

Stepper mottor
void setup() {
// Initialize all pins on PORTD as outputs
DDRD = 0xFF;
}

void loop() {
int i, k;
k = 0;

// Forward shifting pattern


while (k <= 2) {
for (i = 0x01; i <= 0x08; i <<= 1) {
PORTD = i;
delay(10);
}
k++;
}
delay(5000);

k = 0;

// Reverse shifting pattern


while (k <= 2) {
for (i = 0x08; i >= 0x01; i >>= 1) {
PORTD = i;
delay(10);
}
k++;
}
delay(5000);
}

Buzzer
#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

#define OLED_RESET 4
Adafruit_SSD1306 display(OLED_RESET);

const int trigPin = 9;


const int echoPin = 10;
int led = 7;
int led1 = 3;
int led2 = 4;

long duration;
int distance;

void setup() {
Serial.begin(9600);
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.display();
delay(2000);
display.clearDisplay();

pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(led, OUTPUT);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
}

void loop() {
digitalWrite(led1, HIGH);
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);

duration = pulseIn(echoPin, HIGH);


distance = duration * 0.034 / 2;

Serial.print("Distance: ");
Serial.println(distance);

display.clearDisplay();
display.setTextSize(1);
display.setTextColor(WHITE);
display.setCursor(20, 5);
display.println("Distance:");
display.setCursor(20, 20);
display.setTextSize(1);
String distanceS = String(distance) + "cm";
display.println(distanceS);
display.display();

if (distance < 10) {


tone(7, 440, 2000);
delay(1000);
tone(7, 494, 2000);
delay(1000);
tone(7, 523, 2000);
delay(1000);
digitalWrite(led, HIGH);
digitalWrite(led1, LOW);
digitalWrite(led2, HIGH);
delay(1000);
digitalWrite(led, LOW);
digitalWrite(led2, LOW);
} else {
digitalWrite(led2, LOW);
digitalWrite(led1, HIGH);
}
}

Sort
LXI SP, 0092H
LXI H, 2050H
MVI B, 0AH

LOOP2:
MOV D, H
MOV E, L
MOV C, B

LOOP1:
LDAX D
CMP M
JC LOOP3

PUSH PSW
MOV A, M
STAX D
POP PSW
MOV M, A

LOOP3:
INX D
DCR C
JNZ LOOP1

INX H
DCR B
JNZ LOOP2

HLT

ORG 2050H
DB 01
ORG 2051H
DB 02
ORG 2052H
DB 03
ORG 2053H
DB 04
ORG 2054H
DB 05
ORG 2055H
DB 06
ORG 2056H
DB 07
ORG 2057H
DB 08
ORG 2058H
DB 09
ORG 2059H
DB 0AH
Add number
LXI H, 0030H
MOV C, M
XRA A

LOOP:
ADD C
DCR C
JNZ LOOP
STA 0031H
HLT

ORG 0030H
DB 07H
Convolution

import numpy as np
from scipy import signal
import matplotlib.pyplot as plt

# Create the original signal


sig = np.repeat([0., 1., 0.], 100)

# Create the Hann window


win = signal.windows.hann(50)

# Filter the signal using convolution


filtered = signal.convolve(sig, win, mode='same') / sum(win)

# Create subplots
fig, (ax_orig, ax_win, ax_filt) = plt.subplots(3, 1,
sharex=True, figsize=(10, 8))

# Plot original signal


ax_orig.plot(sig)
ax_orig.set_title('Original Pulse')
ax_orig.margins(0, 0.1)

# Plot window
ax_win.plot(win)
ax_win.set_title('Filter Impulse Response (Hann Window)')
ax_win.margins(0, 0.1)

# Plot filtered signal


ax_filt.plot(filtered)
ax_filt.set_title('Filtered Signal')
ax_filt.margins(0, 0.1)

# Tight layout for better spacing


fig.tight_layout()

# Show the plot


plt.show()
Correlation
import numpy as np
from scipy import signal
import matplotlib.pyplot as plt

# Set random seed for reproducibility


rng = np.random.default_rng()

# Create the original signal


sig = np.repeat([0., 1., 1., 0., 1., 0., 0., 1.], 128)

# Add noise to the original signal


sig_noise = sig + rng.standard_normal(len(sig))

# Perform cross-correlation
corr = signal.correlate(sig_noise, np.ones(128), mode='same') / 128

# Define clock positions for marking


clock = np.arange(64, len(sig), 128)

# Create subplots
fig, (ax_orig, ax_noise, ax_corr) = plt.subplots(3, 1, sharex=True,
figsize=(10, 8))

# Plot original signal


ax_orig.plot(sig, label='Original Signal')
ax_orig.plot(clock, sig[clock], 'ro', label='Clock Markers')
ax_orig.set_title('Original Signal')
ax_orig.legend()
ax_orig.margins(0, 0.1)

# Plot noisy signal


ax_noise.plot(sig_noise, label='Noisy Signal', color='orange')
ax_noise.set_title('Signal with Noise')
ax_noise.legend()
ax_noise.margins(0, 0.1)

# Plot cross-correlated signal


ax_corr.plot(corr, label='Cross-Correlation', color='green')
ax_corr.plot(clock, corr[clock], 'ro', label='Clock Markers')
ax_corr.axhline(0.5, ls=':', color='red', label='Threshold (0.5)')
ax_corr.set_title('Cross-Correlation with Rectangular Pulse')
ax_corr.legend()
ax_corr.margins(0, 0.1)

# Tight layout for better spacing


fig.tight_layout()

# Show the plot


plt.show()
Filter
import numpy as np
from scipy import signal
import matplotlib.pyplot as plt

# Create a sample signal (sine wave + noise)


fs = 500 # Sampling frequency
t = np.linspace(0, 1, fs, endpoint=False) # Time vector
freq = 5 # Frequency of the sine wave
signal_clean = np.sin(2 * np.pi * freq * t) # Clean sine wave
noise = np.random.normal(0, 0.5, signal_clean.shape) # Noise
signal_noisy = signal_clean + noise # Noisy signal

# Design a low-pass Butterworth filter


cutoff_freq = 10 # Desired cutoff frequency in Hz
nyquist_freq = 0.5 * fs # Nyquist frequency
normal_cutoff = cutoff_freq / nyquist_freq # Normalized cutoff
frequency
b, a = signal.butter(4, normal_cutoff, btype='low', analog=False) #
4th order filter

# Apply the filter to the noisy signal


signal_filtered = signal.filtfilt(b, a, signal_noisy)

# Plot the signals


fig, (ax_orig, ax_noisy, ax_filtered) = plt.subplots(3, 1,
figsize=(10, 8), sharex=True)

# Original clean signal


ax_orig.plot(t, signal_clean, label='Clean Signal', color='blue')
ax_orig.set_title('Clean Signal')
ax_orig.legend()

# Noisy signal
ax_noisy.plot(t, signal_noisy, label='Noisy Signal', color='orange')
ax_noisy.set_title('Noisy Signal')
ax_noisy.legend()

# Filtered signal
ax_filtered.plot(t, signal_filtered, label='Filtered Signal',
color='green')
ax_filtered.set_title('Filtered Signal (Low-Pass)')
ax_filtered.legend()

# Show the plots


plt.tight_layout()
plt.show()
Face Detection with expression and Eyeball
import cv2
import matplotlib.pyplot as plt

# Load the input image


image_path =
'/home/pi/Downloads/PM_Modi_with_Giorgia_Meloni_1701457216381_
1701457216666-1861968357.jpeg'
image = cv2.imread(image_path)

# Convert the image to grayscale


gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

# Load the Haar Cascade classifier for face detection


haarcascade_path =
'/home/pi/Downloads/haarcascade_frontalface_default.xml' #
Update this path
face_cascade = cv2.CascadeClassifier(haarcascade_path)

# Check if the cascade was loaded successfully


if face_cascade.empty():
print("Error loading cascade file. Please check the path.")
else:
# Detect faces in the image
faces = face_cascade.detectMultiScale(gray_image,
scaleFactor=1.1, minNeighbors=5)

# Draw rectangles around detected faces


for (x, y, w, h) in faces:
cv2.rectangle(image, (x, y), (x + w, y + h), (255, 0,
0), 2) # Blue rectangle
# Optionally, you could add a placeholder for emotion
text
cv2.putText(image, "happy", (x, y - 10),
cv2.FONT_HERSHEY_SIMPLEX, 0.8, (255, 0, 0), 2)

# Convert BGR image to RGB


image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

# Display the image with detected faces


plt.figure(figsize=(10, 8))
plt.imshow(image_rgb)
plt.axis('off')
plt.title('Detected Faces')
plt.show()
Start of the process

Start

InitializeStackPointer()

LoadHL(2050H)

SetB(0AH)

LOOP2

Halt process if B is not


B>0
greater than 0

True False

MoveDEtoHandL() Halt()

CopyBtoC()

LOOP1

C>0

False True

IncrementH() LoadAfromDE()

DecrementB() CompareAwithM()

A<M

False True

PushPSW()

JumpToLOOP3()

MoveMtoA()

StoreAinM()

PopPSW()

IncrementDE()

DecrementC()

You might also like