User Tools

Site Tools


tool_access_control_development

Tool Access Control

We're going to make some controllers to limit access to tools that are dangerous, expensive or easily damaged.

Requirements:

  • Use existing NFC tags
  • Use existing membership database (with enhancements for tracking permissions)
  • Allow some users to be “trainers”, capable of granting usage permissions to new users
  • Allow some users to be “maintainers”, capable of disabling/enabling a tool.
  • Mains powered
  • Able to switch a tool on or off by relay, secondary contactor or integration into an interlock circuit.

Planned high-level design:

  • Enclosure
  • 240V→5V power supply module
  • PN532 NFC module (I2C)
  • Buzzer/sounder
  • Current clamp
  • 20×4 line LCD (I2C)
  • Two push buttons
  • PCB:
    • ESP8266 microcontroller with WiFi
    • 5V→3.3V LDO
    • 5V relay with 240V/10A contacts

PCB elements:

  • ESP8266 ESP-12
  • 3.3V LDO and capacitors
  • 5V relay with oversize tracks
  • N-channel MOSFET and diode for relay
  • Buzzer and N-channel MOSFET
  • I2C pullups
  • Switchable voltage output (3.3V/5V) for PN532 and LCD
  • Connectors:
    • FTDI (6-pin 0.1“ male header)
    • Reset (2-pin 0.1” male header)
    • Boot Mode: (2-pin 0.1“ male header)
    • PN532 GND, VCC, SDA, SCL, reset (5-pin 0.1” male header)
    • LCD GND, VCC, SDA, SCL (4-pin 0.1“ male header)
    • 8-pin pluggable 3.5mm header
      • DC input GND, 5V (2 contact)
      • Current clamp (2 contact)
      • Button A (2 contact)
      • Button B (2 contact)
    • Relay (2 contact 10A pluggable screw terminal 5.0mm)

GPIO mapping:

Pin Assignment Restrictions
0 not used pull-up
2 PN532 reset pull-up
4 push button A
5 push button B
12 SCL
13 SDA
14 relay
15 buzzer pull-down
16 not used connect to reset for wake (pull up)
ADC current clamp 0-1V

PCB ordered: http://gerblook.org/pcb/XTJvvHh7SqdGVgndaU67zS

PCB BOM - Rev 2 (ss2)

Ref Item Quantity Selection
U1 3.3V LDO 1 Farnell 1652366 (NCP1117ST33T3G)
U2 TE OJ/OJE series 5V relay 1 Farnell 1891661
U3 ESP-12/ESP-12E/ESP-12F 1
SP1 12.7mm through-hole buzzer 1 CPC LS03778 or LS00654
D1 Flyback diode 1 Farnell 1625280 (US1D)
D2 ESD protection diode 1 Farnell 2317508 (ESD5Z3.3T1G)
Q1, Q2 N-channel MOSFET SOT-23 2 Farnell 2069541
C1, C2, C3 10uF capacitor 3
C4 0.1uF 0603 capacitor 1
R1, R2, R7, R10, R11, R12, R13, R14 10K 0603 8
R3, R4 22R 0603 2 Optional, values depend on current clamp
R5 1K 0603 1
R6 56K 0603 1
R8, R9 2K2 0603 2
P1 8-way 3.5mm pluggable header 1 Wurth 3221 + Wurth 3611
P2 4-way 0.1” header 1
P3 2-way 5mm pluggable header 1 CPC CN18918 + CPC CN18994
P4 5-way 0.1“ header 1
P5 6-way 0.1” header 1
P6 2-way 0.1“ header 1
P7 2-way 0.1” header 1

PCB BOM - Rev 3 (ss3)

Errata:

  • R2 in the schematic is R13 on the PCB - Fixed in git repo
Ref Item Quantity Selection
U1 Wemos D1 Mini 1
U2 TE OJ/OJE series 5V relay 1 Farnell 1891661
SP1 12.7mm through-hole buzzer 1 CPC LS03778 or LS00654
D1 Flyback diode 1 Farnell 1625280 (US1D)
D2 ESD protection diode 1 Farnell 2317508 (ESD5Z3.3T1G)
Q1, Q2 N-channel MOSFET SOT-23 2 Farnell 2069541
C3 10uF capacitor 1
R1, R6, R7, R13 10K 0603 3
R3, R4 200R 0603 2 Optional, values depend on current clamp
R5 1K 0603 1
R8, R9 2K2 0603 2
P1 8-way 3.5mm screw terminal 1
P2 4-way 0.1“ header 1
P3 2-way 5mm pluggable header 1 CPC CN18918 + CPC CN18994
P4 5-way 0.1” header 1
P7 2-way 0.1“ header 1

Enclosure BOM

Item Quantity Selection
enclosure 1 eBay
PCB 1
laser-cut mounting plate 1
push buttons 2
LCD 20×4 1
LCD I2C backpack 1
PN532 module 1
4-way 0.1” female/female 10cm cable 1
5-way 0.1“ custom PN532 cable 1
M3 10mm nylon screws 6
M3 8mm nylon screws 4
M3 nylon half nuts 10
M3 nylon spacer 15mm 2

System BOM

Item Quantity Selection
enclosure 1
240V→5V PSU module 1
LCD 20×4 5V 1
I2C→LCD interface 1
PN532 NFC 1
contactor 1
current clamp 1
push buttons 2 CPC SW03314 or SW03625
0.1” female/female patch wires
0.1“ female 2-way housings CPC CN14555
0.1” female 4-way housings 1 CPC CN14558
0.1“ female 5-way housings 1 CPC CN14558
internal mountings laser cut
LCD bezel

Which tools?

Tool Status Access
Table Saw done members
Clarke Band Saw done members
Sander done trained users only
Emco Lathe done members
Welder 32A socket done trained users only
Laser cutter #2 done limited access for testing
Mitre Saw done members
Bantam Lathe done trained users only
Startrite Band Saw done trained users only
Laser cutter #1
Bench grinder #1
Bench grinder #2
Drill press(es)
Unimatic CNC router
Denford Novaturn lathe
Denford Novamill

Per-controller settings:

  • adc to amps ratio
  • adc interval
  • session active timeout
  • session idle timeout

Hardware Build Tasks:

  • assemble PCB
  • drill push-button holes in case lid and fit push-buttons
  • drill cable entry holes in case and fit glands
  • solder leads to push-buttons
  • solder leads to PSU modules and add heatshrink
  • solder leads to NFC module (termination on 5-way header)
  • laser cut mounting plate
  • attach LCD, NFC and primary PCB to mounting plate
  • wiring for LCD, NFC
  • final wiring for mains

Current Stock:

  • 2x assembled v2 PCBs
  • 1x unopened enclosure
  • 4x push buttons
  • 1x 2-pin connector (both parts)
  • 3x AC-DC 5V 500mA PSUs (one with attached leads)
  • 5x PN532
  • 1x blue LCD (and another 5x for non-tool projects)
  • 2x current clamps
  • 8x Wemos D1 Mini (plus 2 owed from shop stock)
  • 10x yellow LCD
  • 10x v3 PCBs

Order:

  • 2x yellow LCD
  • 2x Wemos D1 Mini
  • 10x current clamps
  • 7x PN532
  • 11x enclosures
tool_access_control_development.txt · Last modified: 2018-11-07 11:23 by tim