Brijesh SinghAmol Disale
Published © MIT

Smart Cash TransitBox

Smart Cash Box guard to secure ATM cash during transit which gives emergency alert with a live tracking features.

AdvancedShowcase (no instructions)3 days2,714

Things used in this project

Hardware components

Arduino Nano R3
Arduino Nano R3
×1
SparkFun Triple Axis Accelerometer Breakout - LIS3DH
SparkFun Triple Axis Accelerometer Breakout - LIS3DH
×1
Solenoid Door Lock
×1
Li-Ion Battery 1000mAh
Li-Ion Battery 1000mAh
×1
12V 2Amps battery
×1
magnetic door switch sensor
×1
Generic Box
×1
NFC module
×1

Software apps and online services

PubNub Publish/Subscribe API
PubNub Publish/Subscribe API
Apache Cordova Platform
Fusion 360
Autodesk Fusion 360
Google Maps
Google Maps
Arduino IDE
Arduino IDE

Hand tools and fabrication machines

3D Printer (generic)
3D Printer (generic)

Story

Read more

Custom parts and enclosures

Lock Socket

Schematics

Working Block Diagram

Hardware Block Diagram

Code

Index.html file

HTML
<!DOCTYPE html>
<html>
    <head>
        <title>Smart Cash Box</title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width">

        <link rel="stylesheet" href="css/w3.css">


        <!-- Widget support Js files-->
        <script src="webfiles/raphael-2.1.4.min.js"></script>
  		  <script src="webfiles/justgage.js"></script>

        <!-- Widget support Js files-->
        <script type="text/javascript"  src="js/jquery-3.1.1.min.js"></script>
        <script type="text/javascript" src="js/pubnub.4.20.1.js"></script>
        <script type="text/javascript"  src="js/index.js"></script>

        <style>
          .w3-myfont {
                font-family: Helvetica;
                font-weight: bold;
                text-shadow:2px 2px 0 #444;
            }
        </style>
    </head>
    <body>
        <div>
            <div class="w3-container w3-teal" style="text-align: center;">
                <h2 class="w3-myfont">Smart Cash Box</h2>
            </div>

            <div class="w3-row" style="text-align: center; margin-top: 5px;">
                <p id="msgId"></p>
                <div class="w3-row" style="text-align: center;font-size: 2px;">
                  <div class="w3-mobile w3-col s4 m4 l4" id="motionId" ></div>
                  <div class="w3-mobile w3-col s4 m4 l4"><p></p></div>
                  <div class="w3-mobile w3-col s4 m4 l4" id="doorId" ></div>
                </div>
                <div class="w3-row" style="text-align: center bottom;">
                  <div class="w3-mobile w3-col s4 m4 l4"><p></p></div>
                  <div class="w3-mobile w3-col s4 m4 l4" id="batId" ></div>
                  <div class="w3-mobile w3-col s4 m4 l4"><p></p></div>
                </div>
                <br>
            </div>

            <div class="w3-container" style="text-align: center;">
                <span><b>Device GPS Co-ordinates</span></b><br>
                <span id="gpsValue"></span><br><br>
                <button class="w3-btn w3-round-large w3-medium w3-blue" id="mapBtn" onclick="window.location='mapView.html'" style="width:120px">Show Map</button>
                <button class="w3-btn w3-round-large w3-medium w3-green" id="devArmBtn" onclick="deviceArmFn()" style="width:120px">DeviceArm</button>
                <p id="updatesId"></p>
            </div>
            <p id="updatesId"></p>
            <br><br>

            <div class="w3-container w3-teal" style="text-align: right;">
                <h5 style="text-shadow:1px 1px 0 #444">By Insfire Team</h5>
            </div>
        </div>

        <script>
          window.onload = function() {
            gBattery.refresh(batteryVal);
          };
          var min = 0;
          var max = 100;

          var gMotion = new JustGage({
                id: 'motionId',
                value: 0,
                min: 0,
                max: 1,
                title:"Motion Alert",
                donut: true,
                pointer: false,
                gaugeWidthScale: 3,
                pointerOptions: {
                  toplength: 10,
                  bottomlength: 10,
                  bottomwidth: 8,
                  color: '#000'
                },
                customSectors: [{
                  color: "#ff0000",
                  lo: 50,
                  hi: 100
                }, {
                  color: "#00ff00",
                  lo: 0,
                  hi: 50
                }],
                counter: true
            });

            var gDoor = new JustGage({
                  id: 'doorId',
                  value: 0,
                  min: 0,
                  max: 1,
                  title:"Door Alert",
                  donut: true,
                  pointer: false,
                  gaugeWidthScale: 3,
                  pointerOptions: {
                    toplength: 10,
                    bottomlength: 10,
                    bottomwidth: 8,
                    color: '#000'
                  },
                  customSectors: [{
                    color: "#ff0000",
                    lo: 50,
                    hi: 100
                  }, {
                    color: "#00ff00",
                    lo: 0,
                    hi: 50
                  }],
                  counter: true
              });


          var gBattery = new JustGage({
            id: "batId",
            value: 0,
            min: min,
            max: max,
            title: "BatteryLevel",
            symbol: '%',
            levelColorsGradient: true,
            levelColors: ["FF0000","FF6103","FFFF00","00FF00","FFFF00","FF00FF"],
            shadowSize: 2,
            shadowVerticalOffset: 12,
            relativeGaugeSize:true,
            gaugeWidthScale: 0.5
          });

          function deviceArmFn(){
                  if($("#devArmBtn").text() === "DeviceArm"){
                    app.publish({"deviceArm":1});
                    $("#devArmBtn").html('DisArm');
                    $('#devArmBtn').removeClass('w3-green').addClass('w3-red');

                  }
                  else {
                    app.publish({"deviceArm":0});
                    $("#devArmBtn").html('DeviceArm');
                    $('#devArmBtn').removeClass('w3-red').addClass('w3-green');
                  }
                }

          app.initialize();
          app.subscribe();
        </script>
    </body>
</html>

Credits

Brijesh Singh

Brijesh Singh

23 projects • 37 followers
Utilizing the spare time to Make and Share DIY Electronics and IoT projects with the online maker community.
Amol Disale

Amol Disale

9 projects • 100 followers
I am passionate about the idea of open-source hardware and software. I am ready to help in prototyping IoT, Smart Home, and other products.

Comments