Editing Instrumentino Notes

Jump to navigation Jump to search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

Latest revision Your text
Line 3: Line 3:
 
Just a draft working on it as of Oct 2016, check history to see if updated.
 
Just a draft working on it as of Oct 2016, check history to see if updated.
  
see also: [[Controlino Notes]]  [[Instrumentino/Smart Terminal Challenge]]
+
see also: [[Controlino Notes]]
  
 
= What is Instrumentino =
 
= What is Instrumentino =
Line 14: Line 14:
 
My Take
 
My Take
  
Instrumentino is an instrument control system designed to interface with various smart or semi smart systems. The actual sensors and actuators can be as simple as potentiometers, lm35, solar cells, relays..... .  As a sort of glue there is some smart component ( beyond Instrumentino ) which, in the base case, is an Arduino running Controlino.  Instrumentino can configure Controlino on the fly to interact with a large number of sensors/actuators.
+
Instrumentino is an instrument control system designed to interface with various smart or semi smart systems. The actual sensors and actuators can be as simple as potentiometers, lm35, solar cells, relays..... .  As a sort of glue there is some smart component ( beyond Instrumentino ) which in the base case is an Arduino running Controlino.  Instrumentino can configure Controlino on the fly to interact with a large number of sensors/actuators.
  
 
= Why =
 
= Why =
Line 46: Line 46:
  
 
To do much more it seems you need an arduino.
 
To do much more it seems you need an arduino.
 +
 +
== Clean Install on Mint ==
 +
 +
Installed spyder
 +
 +
went to https://pypi.python.org/pypi/instrumentino  link to git hub gave 404  search found https://github.com/yoelk/instrumentino
 +
 +
  using D:\_Source\Python\instremento\Using Instrumentino_v03.odt
 +
 
 +
  package manger wxpython
  
 
= Suggestions Remarks =  
 
= Suggestions Remarks =  
  
Stuff from Russ, more as it occurs to me.
+
* Merge git hub for Instrumentino and Controlino what is value of separate repositories.
 
 
* Merge git hub for Instrumentino and Controlino. What is value of separate repositories, I do not see it.
 
  
 
* Is there doc for Controlino? I added just a bit at:  [[Controlino Notes]]
 
* Is there doc for Controlino? I added just a bit at:  [[Controlino Notes]]
Line 62: Line 70:
  
 
*Looks like development is moving towards a new GUI.  Consider making the GUI a snap in snap out replaceable componentl.  Why Kivy, I can guess, but the fight to install might cool my jets.
 
*Looks like development is moving towards a new GUI.  Consider making the GUI a snap in snap out replaceable componentl.  Why Kivy, I can guess, but the fight to install might cool my jets.
 
*Do not make too monolithic, instead a family of applications not too tightly coupled.
 
  
 
= Old Notes Ignore Until Properly Organized =
 
= Old Notes Ignore Until Properly Organized =
Line 98: Line 104:
  
 
Well, not so bad.  Useful to know that my Spyder already had wxpython, came with it or I installed, who knows.  Also useful to know wxpython is called wx.  This helps a lot.
 
Well, not so bad.  Useful to know that my Spyder already had wxpython, came with it or I installed, who knows.  Also useful to know wxpython is called wx.  This helps a lot.
 
== Clean Install on Mint ==
 
 
Installed spyder
 
 
went to https://pypi.python.org/pypi/instrumentino  link to git hub gave 404  search found https://github.com/yoelk/instrumentino
 
 
  using D:\_Source\Python\instremento\Using Instrumentino_v03.odt
 
 
 
  package manger wxpython
 
 
 
 
== Documentation ==
 
* '''D:\_Source\Python\instremento\Using Instrumentino_v03 (1).odt'''  on my system, not sure where I found it.  Looks like from github below.
 
*[https://github.com/yoelk/Instrumentino  Github Master for Instrumentino]  what other than code is there: Wiki, not yet.  But Russ can edit it.  In https://github.com/yoelk/instrumentino/tree/master/documents there are some good documents.
 
*[http://playground.arduino.cc/interfacing/python  Arduino Info]
 
 
*[[https://www.youtube.com/watch?v=8AVNLTtEAwM Youtube present]]
 
 
<!-----------
 
*[[]]
 
*[[]]
 
 
 
Did you ever look at my presentation in EclipseCon 2015?
 
I made a presentation there that was apparently taken on camera and uploaded to Youtube:
 
https://www.youtube.com/watch?v=8AVNLTtEAwM
 
My slides are here (Instrumentino presentation.pptx):
 
https://github.com/yoelk/Instrumentino/tree/master/documents
 
If you didn't, it might explain better what instrumentino is and what plans
 
------------->
 
 
== Trying to Run  ==
 
 
example_run_ArduinoPins.py  on page 6/16
 
 
my was located at:
 
D:\Russ\0000\SpyderP\instrumentino\instrumentino-master\documents\example_run_ArduinoPins.py\ArduinoPins.py
 
 
got errors until I added at top of file
 
 
# russ add
 
import sys
 
sys.path.append( r"D:/Russ/0000/SpyderP" )
 
# end russ add
 
 
then it ran screen looked a lot like just running D:\Russ\0000\SpyderP\instrumentino\__init__.py
 
 
but what does it do.  File Load Sequence and File Load Method -- cannot find any example files of these types and not sure what they should do
 
 
sequence browse also uncleare it is looking for *.mdt files which are ??
 
 
 
method actions, look like actions are built in -- what is time defaulting to 00:00:00 time as in time.time() or time in hr:min:sec from start of system or from
 
clock
 
 
== Structure of system based on ArduinoPins.py ==
 
 
Looks like your app is a descendant of Instrument ( from instrumentino import Instrument in __init.py__) which runs when it is created.
 
 
it is modified from the base by "addition" of  comps, actions, version, name, description 
 
 
this then is used to initialize  InstrumentinoApp which looks like it is mostly the gui.
 
 
We do not seem to have python docs or unit tests to help inform us
 
 
 
what are actions?  seem to be tuple of things like the one SysActionSetPins()  look to see if it is based on abstract base.  Descends from SysAction
 
 
SysAction from instrumentino.action import SysAction, SysActionParamTime, SysActionParamFloat, SysActionParamInt
 
 
class SysAction(RunnableItem):  and RunnableItem  from executable_listctrl import RunnableItem  which is pretty much empty, this one seems to be an ABC but
 
not declared to be so.
 
 
 
An architecture document would be nice, major classes, use of threads,  mvc?  GUI vs other components
 
 
Add a log file ?? where to capture exceptions, just use the console, if so advise.
 
 
 
Well things looked good but got
 
 
Traceback (most recent call last):
 
  File "D:/Russ/0000/SpyderP\instrumentino\__init__.py", line 155, in OnUpdateControls
 
    self.UpdateControls(event.data)
 
  File "D:/Russ/0000/SpyderP\instrumentino\__init__.py", line 180, in UpdateControls
 
    comp.Enable(cfg.IsCompOnline(comp))
 
  File "D:/Russ/0000/SpyderP\instrumentino\comp.py", line 236, in Enable
 
    self.panel.Enable(isEnabled)
 
  File "D:\apps\Anaconda\lib\site-packages\wx-3.0-msw\wx\_core.py", line 9971, in Enable
 
    return _core_.Window_Enable(*args, **kwargs)
 
TypeError: in method 'Window_Enable', expected argument 2 of type 'bool'
 
 
in the console
 
  
  
The system description file (e.g. mySystem.py) should include the following parts:
 
imports  -- there is no such file do you mean something like ArduinoPins.py
 
  
[[category:SmartTerminal]] [[Category:Arduino/RaspberryPi]]
+
[[category:Russ Draft]][[category:Russ]]

Please note that all contributions to OpenCircuits may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see OpenCircuits:Copyrights for details). Do not submit copyrighted work without permission!

Cancel Editing help (opens in new window)