# This file was automatically generated by SWIG (http://www.swig.org).
# Version 3.0.8
#
# Do not make changes to this file unless you know what you are doing--modify
# the SWIG interface file instead.
from sys import version_info
if version_info >= (2, 6, 0):
def swig_import_helper():
from os.path import dirname
import imp
fp = None
try:
fp, pathname, description = imp.find_module('_pyupm_wfs', [dirname(__file__)])
except ImportError:
import _pyupm_wfs
return _pyupm_wfs
if fp is not None:
try:
_mod = imp.load_module('_pyupm_wfs', fp, pathname, description)
finally:
fp.close()
return _mod
_pyupm_wfs = swig_import_helper()
del swig_import_helper
else:
import _pyupm_wfs
del version_info
try:
_swig_property = property
except NameError:
pass # Python < 2.2 doesn't have 'property'.
def _swig_setattr_nondynamic(self, class_type, name, value, static=1):
if (name == "thisown"):
return self.this.own(value)
if (name == "this"):
if type(value).__name__ == 'SwigPyObject':
self.__dict__[name] = value
return
method = class_type.__swig_setmethods__.get(name, None)
if method:
return method(self, value)
if (not static):
if _newclass:
object.__setattr__(self, name, value)
else:
self.__dict__[name] = value
else:
raise AttributeError("You cannot add attributes to %s" % self)
def _swig_setattr(self, class_type, name, value):
return _swig_setattr_nondynamic(self, class_type, name, value, 0)
def _swig_getattr_nondynamic(self, class_type, name, static=1):
if (name == "thisown"):
return self.this.own()
method = class_type.__swig_getmethods__.get(name, None)
if method:
return method(self)
if (not static):
return object.__getattr__(self, name)
else:
raise AttributeError(name)
def _swig_getattr(self, class_type, name):
return _swig_getattr_nondynamic(self, class_type, name, 0)
def _swig_repr(self):
try:
strthis = "proxy of " + self.this.__repr__()
except Exception:
strthis = ""
return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
try:
_object = object
_newclass = 1
except AttributeError:
class _object:
pass
_newclass = 0
def getVersion():
return _pyupm_wfs.getVersion()
getVersion = _pyupm_wfs.getVersion
[docs]class WFS(_object):
"""
API for the Water Flow Sensor.
ID: wfs
Name: Water Flow Sensor
Other Names: Grove Water Flow Sensor
Category: liquid
Manufacturer: seeed
Link:http://wiki.seeedstudio.com/wiki/G1/2_Water_Flow_sensor
Connection: gpio
Kit: eak This sensor is used to measure water flow in liters per
minute (LPM). It incorporates a Hall Effect sensor. The UPM module
defines an interrupt routine to be triggered on each low pulse,
keeping count. This device requires a 10K pull-up resistor for the
signal line (yellow wire). There is a schematic diagram on the
SeeedStudio site
(3/2015):http://www.seeedstudio.com/wiki/index.php?title=G1/2_Water_Flow_sensor
However, be careful when wiring this up - the schematic appears to
have a bug in it: the lower left connection of the signal line
(yellow) to Vcc (red) should not be there. The sensor can work with
this connection, but probably not for very long.
C++ includes: wfs.hpp
"""
__swig_setmethods__ = {}
__setattr__ = lambda self, name, value: _swig_setattr(self, WFS, name, value)
__swig_getmethods__ = {}
__getattr__ = lambda self, name: _swig_getattr(self, WFS, name)
__repr__ = _swig_repr
def __init__(self, pin):
"""
WFS(int pin)
Water Flow Sensor constructor
Parameters:
-----------
pin: Digital pin to use
"""
this = _pyupm_wfs.new_WFS(pin)
try:
self.this.append(this)
except Exception:
self.this = this
__swig_destroy__ = _pyupm_wfs.delete_WFS
__del__ = lambda self: None
[docs] def getMillis(self):
"""
uint32_t getMillis()
Returns the number of milliseconds elapsed since initClock() was last
called.
Elapsed milliseconds
"""
return _pyupm_wfs.WFS_getMillis(self)
[docs] def initClock(self):
"""
void initClock()
Resets the clock
"""
return _pyupm_wfs.WFS_initClock(self)
[docs] def clearFlowCounter(self):
"""
void
clearFlowCounter()
Resets the flow counter to 0. The flow counter should be stopped via
stopFlowCounter() prior to calling this function.
"""
return _pyupm_wfs.WFS_clearFlowCounter(self)
[docs] def startFlowCounter(self):
"""
void
startFlowCounter()
Starts the flow counter
"""
return _pyupm_wfs.WFS_startFlowCounter(self)
[docs] def stopFlowCounter(self):
"""
void
stopFlowCounter()
Stops the flow counter
"""
return _pyupm_wfs.WFS_stopFlowCounter(self)
[docs] def flowCounter(self):
"""
uint32_t flowCounter()
Gets the flow counter
Flow counter
"""
return _pyupm_wfs.WFS_flowCounter(self)
[docs] def flowRate(self):
"""
float flowRate()
Computes the flow rate in liters per minute (LPM). Note, this is for
the Grove WFS. If you are using some other WFS, you should compute the
flow rate on your own based on the data for your sensor.
Computed flow rate
"""
return _pyupm_wfs.WFS_flowRate(self)
WFS_swigregister = _pyupm_wfs.WFS_swigregister
WFS_swigregister(WFS)
# This file is compatible with both classic and new-style classes.