Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tema:
Reporte de DATACENTER
Aplicación de las
Telecomunicaciones
Alumnos:
Jessica Viridiana Hernández Rodríguez
Jared Esteban Alfaro López
Matriculas:
16002247
16001584
Profesor:
Juan Pablo Murillo Ruiz
Grupo:
ITI-908
Índice
Objetivo General ............................................................................................................................. 3
Objetivos Específicos ................................................................................................................... 3
Introducción..................................................................................................................................... 4
Lista de Materiales y Herramientas ........................................................................................... 5
Desarrollo ......................................................................................................................................... 9
Control de Acceso Seguro..................................................................................................... 10
Control de Temperatura.......................................................................................................... 10
Detector de Humo .................................................................................................................... 10
Control de Iluminación............................................................................................................ 11
Alerta de seguridad ................................................................................................................. 11
Resultados: .................................................................................................................................... 12
Diagrama Físico ........................................................................................................................ 12
Control de Acceso Seguro ................................................................................................. 12
Control de Temperatura .................................................................................................... 12
Detector de Humo ................................................................................................................ 13
Control de Iluminación........................................................................................................ 13
Alerta de seguridad.............................................................................................................. 14
................................................................................................................................................... 14
Diagrama Eléctrico................................................................................................................... 15
Fotos ............................................................................................................................................ 17
Código Fuente ........................................................................................................................... 18
Conclusiones................................................................................................................................. 32
Referencias .................................................................................................................................... 33
Objetivo General
Diseñar y crear un Data Center seguro a nivel de disponibilidad de tier 3 aplicando
los sistemas de Control de acceso, control de iluminación, sistema contra incendios,
control de temperatura y humedad y monitoreo.
Objetivos Específicos
(Temperatura y humedad)
Para comenzar a construir el Data Center nos dirigimos a una carpintería para poder
obtener los dos trozos de manera con las medidas de 60x40, de igual manera se
pidieron otros trozos pequeños para poder pegarlos en uno de los trozos de manera
de 60x40 y así poder realizar el piso falso de la data center.
Después de haber armado el Data Center con sus respectivos muebles para cada
zona, se comenzó a implementar los cinco sistemas lo cuales son: Control de
Acceso Seguro, Control de iluminación, Control de temperatura y aire
acondicionado, Detector de Humo y control de seguridad. Al tener los sistemas que
se implementaron se compraron los materiales necesarios para poder realizar los
sistemas.
Los materiales necesarios que se utilizaron fueron: un servomotor, una raspberry pi,
cables dupoint.
Control de Temperatura
Para realizar este sistema se realizó una interfaz gráfica donde contiene un botón
el cual permita activar el sensor y un label que indicará la temperatura del cuarto,
donde el usuario podrá ver en qué estado se encuentra. Este sistema se
implementará con un sensor DHT11 en el área de racks. En caso de que la
temperatura sea alta para el cuarto, se activara el ventilador para enfriar el mismo.
Detector de Humo
Para realzar este sistema se realizó una interfaz gráfica la cual contiene un botón
para encender el sensor de humo. En caso de que el sensor detecte humo se
escuchara un sonido donde indique la alerta. El sistema se implementará en el área
de control de soporte.
Los materiales necesarios que se utilizaron fueron: un sensor de humo, buzzer, una
raspberry pi, cables dupoint.
Control de Iluminación
Para realizar este sistema se realizó una interfaz gráfica la cual tiene un botón para
que active el sensor de proximidad ultrasónico, el cual funcionara cuando se detecte
una persona las luces se enciendan. También se implementó este sistema en otras
dos zonas para que las luces se puedan encender remotamente al igual que
apagarlas. Para la iluminación se utilizarán leds. Este sistema será implementado
en las áreas de distribución de energía, oficina del proveedor y control de apagado.
Alerta de seguridad
Para realizar este sistema se realizó una interfaz gráfica para que contendrá un
campo de texto y un botón. Este sistema se ejecutará al momento de que un usuario
ingrese una contraseña incorrecta en algunos de los cuartos por medio de un sonido
provocado por el buzzer, este sistema se aplicará en una sala de proveedores.
Los materiales necesarios que se utilizaron fueron: un buzzer, una raspberry pi,
cables dupoint.
Resultados:
Diagrama Físico
Control de Acceso Seguro
Ubicación del
servomotor
Control de Temperatura
Entrada
Área de Racks
Ubicación del
sensor DHT11
Detector de Humo
Entrada
Área de
control de
soporte
Ubicación de
sensor de
humo.
Control de Iluminación
Entrada
Área de control
de apagado
Ubicación del
sensor de
proximidad
ultrasónico y led
Sala de proveedores
Buzzer
Diagrama Eléctrico
Fotos
Código Fuente
import RPi.GPIO as GPIO
import tkinter as tk
import time
import Adafruit_DHT
def Acceso():
def update_reloj():
now=time.strftime("%d/%m/%y %H:%M:%S")
labelreloj.configure(text=now)
root.after(1000,update_reloj)
def Bitacorar():
bitacora=open("bitacoraAcceso.txt","a")
bitacora.close()
def ValidarPassword():
password=caja.get()
if password=="1234":
ServoMotor()
Bitacorar()
else:
label.pack()
ServoMotorError()
caja.delete(0,END)
def ServoMotor():
sermot.angle=45
def ServoMotorError():
sermot.angle=0
def IniciarPines():
GPIO.setmode(GPIO.BCM)
gpioservo17 = 17
IniciarPines()
sermot=AngularServo(gpioservo17)
root = Tk()
labelreloj = Label(text="")
labelreloj.pack()
update_reloj()
password=StringVar()
caja=Entry(root,show="*")
caja.pack()
botonPass = Button(root,text="Entrar",command=ValidarPassword)
botonPass.pack()
root.mainloop()
GPIO.cleanup()
def Seguridad():
def ValidarPassword():
password=caja.get()
if password=="1234":
Bien()
else:
Mal()
caja.delete(0,END)
def Bien():
bitacora=open("bitacoraSeguridad.txt","a")
bitacora.close()
GPIO.setwarnings(False)
# indicamos el uso de la identificacion BCM para los GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setup(20,GPIO.OUT)
GPIO.output(20, False)
estatus="Puede entrar"
x = Label(root2, text="***********************")
x.pack()
label = Label(root2,text=estatus)
label.pack()
def Mal():
bitacora=open("bitacoraSeguridad.txt","a")
bitacora.close()
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.setup(20,GPIO.OUT)
GPIO.output(20, True)
estatus="Contraseña incorrecta"
x = Label(root2, text="***********************")
x.pack()
label.pack()
estatus = ""
root2 = Tk()
password=StringVar()
caja=Entry(root2,show="*")
caja.pack()
botonPass = Button(root2,text="Entrar",command=ValidarPassword)
botonPass.pack()
label = Label(root2,text=estatus)
label.pack()
root2.mainloop()
GPIO.cleanup()
def Prox():
def Hcsr04():
GPIO.setup(GPIO_TRIGGER,GPIO.OUT)
GPIO.setup(GPIO_ECHO,GPIO.IN)
GPIO.output(GPIO_TRIGGER,False)
GPIO.output(GPIO_TRIGGER,True)
time.sleep(0.00001)
GPIO.output(GPIO_TRIGGER,False)
start=time.time()
while GPIO.input(GPIO_ECHO)==0:
start = time.time()
while GPIO.input(GPIO_ECHO)==1:
stop = time.time()
elapsed = stop-start
if distance>100:
distance=100
if distance<=7:
EncenderLed()
for i in range(0,100,10):
canvasdistancia.create_arc(200-i,200-i,10+i,10+i,start=315,extent=90,fill='cyan')
canvasdistancia.create_arc(100+distance,100+distance,110-distance,110-
distance,start=315,extent=90,fill='black')
selection="Distancia ="+str(distance)
labeldistancia.config(text=selection)
root3.after(1000,Hcsr04)
def IniciarPines():
GPIO.setmode(GPIO.BCM)
def EncenderLed():
bitacora=open("bitacoraLeds.txt","a")
bitacora.close()
GPIO.setmode(GPIO.BCM)
GPIO.setup(GPIO_LED, GPIO.OUT)
GPIO.output(GPIO_LED,True)
def ApagarLed():
bitacora=open("bitacoraLeds.txt","a")
bitacora.close()
GPIO.setmode(GPIO.BCM)
GPIO.setup(GPIO_LED, GPIO.OUT)
GPIO.output(GPIO_LED,False)
GPIO.setup(GPIO_LED2, GPIO.OUT)
GPIO.output(GPIO_LED2,False)
GPIO.setup(GPIO_LED3, GPIO.OUT)
GPIO.output(GPIO_LED3,False)
def EncenderLed23():
bitacora=open("bitacoraLeds.txt","a")
bitacora.close()
GPIO.setmode(GPIO.BCM)
GPIO.setup(GPIO_LED2, GPIO.OUT)
GPIO.output(GPIO_LED2,True)
GPIO.setup(GPIO_LED3, GPIO.OUT)
GPIO.output(GPIO_LED3,True)
GPIO_LED=4
GPIO_TRIGGER=23
GPIO_ECHO=24
GPIO_LED2 = 26
GPIO_LED3 = 19
IniciarPines()
root3=Tk()
canvasdistancia=Canvas(root3)
canvasdistancia.pack()
labeldistancia=Label(root3)
labeldistancia.pack()
apagar=Button(root3,text="Apagar",command=ApagarLed)
apagar.pack()
encenderOtros=Button(root3,text="Encender",command=EncenderLed23)
encenderOtros.pack()
Hcsr04()
root3.mainloop()
GPIO.cleanup()
def Humo():
def iniciar():
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.setup(21,GPIO.IN)
GPIO.setup(18,GPIO.OUT)
GPIO.output(18,False)
while True:
if GPIO.input(21):
label.pack()
GPIO.output(18,True)
bitacora=open("bitacoraHumo.txt","a")
bitacora.close()
break
def Parar():
bitacora=open("bitacoraHumo.txt","a")
bitacora.close()
GPIO.output(18,False)
GPIO.cleanup()
root4 = Tk()
root4.title("Detector de humo")
l.pack()
k = Button(root4,text="Iniciar",command=iniciar)
k.pack()
i = Button(root4,text="Parar",command=Parar)
i.pack()
root4.mainloop()
def Temperaturas():
def Termometro():
humidity, temperature=Dht11()
selection="Humedad = "+str(humidity)
labelhumedad.config(text=selection)
labeltemperatura.config(text=selection)
print("humedad ",humidity)
print("temperatura ",temperature)
if(float(str(temperature))>20.0):
EncenderVen()
print("Encendido")
else:
ApagarVen()
print("Apagado")
temperature=40-temperature
#canvastermometro.create_line(79,44,79,235,width=10,fill='white')
#canvastermometro.create_line(79,40+temperature*4.875,79,235,width=10,fill='red')
root5.after(2000,Termometro)
def Dht11():
sensor=Adafruit_DHT.DHT11
return Adafruit_DHT.read_retry(sensor,gpiotemp)
def IniciarPines():
GPIO.setmode(GPIO.BCM)
def EncenderVen():
bitacora=open("bitacoraTemp.txt","a")
bitacora.close()
GPIO.setmode(GPIO.BCM)
GPIO.setup(gpiovent, GPIO.OUT)
GPIO.output(gpiovent,True)
def ApagarVen():
bitacora=open("bitacoraTemp.txt","a")
bitacora.close()
GPIO.setmode(GPIO.BCM)
GPIO.setup(gpiovent, GPIO.OUT)
GPIO.output(gpiovent,False)
gpiotemp=16
gpiovent=2
IniciarPines()
root5=Tk()
#termoimagen=PhotoImage(file="termometro.gif")
#canvastermometro=Canvas(root5)
#canvastermometro.create_image(20,20,image=termoimagen,anchor=NW)
#canvastermometro.pack()
labeltemperatura=Label(root5)
labeltemperatura.pack()
labelhumedad=Label(root5)
labelhumedad.pack()
Termometro()
root5.mainloop()
GPIO.cleanup()
def Monitoreo():
vp=Tk()
vp.geometry("300x300+0+0")
boton1.pack()
boton2.pack()
boton3.pack()
boton4.pack()
boton5.pack()
vp.mainloop()
GPIO.cleanup()
def Principal():
def ValidarUsuario():
user=cajaiu.get()
password=cajai.get()
Bueno()
p.destroy()
Monitoreo()
else:
Malo()
Bueno()
cajai.delete(0,END)
cajaiu.delete(0,END)
def Bueno():
bitacora=open("bitacoraSeguridad.txt","a")
bitacora.close()
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.setup(20,GPIO.OUT)
GPIO.output(20, False)
estatus="Puede entrar"
x = Label(p, text="***********************")
x.pack()
label = Label(p,text=estatus)
label.pack()
def Malo():
bitacora=open("bitacoraSeguridad.txt","a")
bitacora.close()
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.setup(20,GPIO.OUT)
GPIO.output(20, True)
estatus="Contraseña incorrecta"
x = Label(p, text="***********************")
x.pack()
label.pack()
p = Tk()
p.geometry('200x150')
user=StringVar()
password=StringVar()
usu = Label(p,text="Usuario")
usu.pack()
cajaiu=Entry(p)
cajaiu.pack()
pas = Label(p,text="Contraseña")
pas.pack()
cajai=Entry(p,show="*")
cajai.pack()
botonPass = Button(p,text="Entrar",command=ValidarUsuario)
botonPass.pack()
p.mainloop()
if __name__ == "__main__":
Principal()
Conclusiones
En mi opinión, se me hizo algo interesante elaborar cada uno del sistema (Acceso,
Seguridad, Temperatura, Anti incendios, Iluminación) pero a la vez se me hizo
estresante hacerlos ya que no nos salía el de temperatura, y elaborar todo eso entre
solamente dos integrantes se nos hizo complicado ya que teníamos mas pendientes
como el proyecto integrador y nos afectó mucho la sobrecarga de trabajo, pero a la
vez me beneficie porque aprendí algo de Python.