Hackster is hosting Hackster Holidays, Ep. 6: Livestream & Giveaway Drawing. Watch previous episodes or stream live on Monday!Stream Hackster Holidays, Ep. 6 on Monday!
obniz developer team
Published © GPL3+

Feeding Cat Remotely Using Smartphone

Do you wanna feed your pets from outdoors? I have made a feeding machine that can be controlled on a browser using your smartphone.

BeginnerFull instructions provided4 hours4,010

Things used in this project

Hardware components

Screw and pipe
×1
Pet food
as much as possible
×1
Adafruit servo motor
×1
Micro-USB to USB Cable (Generic)
Micro-USB to USB Cable (Generic)
×1
Battery
×1
obniz
Cambrian Robotics obniz
×1

Story

Read more

Custom parts and enclosures

Screw stl file

Schematics

Obniz and servo motor

Code

Untitled file

HTML
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
 
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
  <script  src="https://code.jquery.com/jquery-3.2.1.min.js" integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4="  crossorigin="anonymous"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.3/umd/popper.min.js" integrity="sha384-vFJXuSJphROIrBnz7yo7oB41mKfc8JzQZiCq4NCceLEaO4IHwicKwpJf9c9IpFgh" crossorigin="anonymous"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>
 
  <script src="https://unpkg.com/obniz@0.1.34/obniz.js"></script>
</head>
 
<body>
<div id="obniz-debug"></div>
<br>
<div class="text-center">
  <h1> Pet Feeder </h1>
</div>
 
<button id="meal">Feeding</button>
<div id="dispMeal"></div>
 
<script>
 
function getTime(){
  var dateTime=new Date();
  var hour = dateTime.getHours();
  var minute = dateTime.getMinutes();
  return hour + ":" + minute;
}
 
/* This will be over written on obniz.io webapp page */
var obniz = new Obniz("OBNIZ_ID_HERE");
 
obniz.onconnect = async function () {
  var numberOfMeal = 0;
  var lastTimeMeal;
  $("#dispMeal").text("Number of feeding : "+numberOfMeal)
  var servo = obniz.wired("ServoMotor", {gnd:0, vcc:1, signal:2});
 
  $("#meal").click(async function(){
    numberOfMeal++
    lastTimeMeal = getTime();
    $("#dispMeal").text("Number of feeding : "+numberOfMeal+", The last time : "+lastTimeMeal)
    servo.angle(0.0);
    await obniz.wait(10000);
    servo.angle(6.9);
  })
}
    
</script>
</body>
</html>

Credits

obniz developer team

obniz developer team

80 projects β€’ 35 followers
Development board "obniz" is controlled via the internet.

Comments