Hello Chris,
The reference to MyData is a pick and place machine that is used to
assemble circuit boards. Check out
https://www.youtube.com/watch?v=56hQ0oBJ4xk Those machines are about the
best example I can think of for a well done application of Linux and
robotics. TpSys (the software that runs the machine) has many similarities
to Linuxcnc. In addition, TpSys has many features that I would like to see
in Linuxcnc:

1) Optical alignment. It uses a camera to look for fiducial marks on the
circuit board to align, scale and rotate the coordinate system.  (With
Linuxcnc, this can be done with a touch probe.)  (It also uses a camera to
examine each part that it is about to place on the board for bent pins, and
alignment. It can reject parts that do not match the programed physical
limits.)

2) It measures board height (and Z alignment), tool height, component
height, travel limits and collisions by force feedback. I would like to see
features like this in Linuxcnc as well, however this is clearly not suited
to many machines, but I can think of a few situations where force feedback
would really help. For example, I have ran my circuit board drill with
EMC/Linuxcnc for over 10 years now. While it works well, commercial circuit
board drilling machines use force feedback to determine drill speed, and
tool condition. This would be a huge help here.

3) It is a great example of a well done integration and embedding job.
Everything it done through the GUI. Setup, programming, backups, software
upgrades, configuration, diagnostics, calibration, you name it, the GUI
does it all. Sure, you can still hit <ctrl><alt>f1 to get to a login
prompt, but under normal usage, and maintenance, there is no reason to do
so.

4)  There are directories that programs are put in to do various
maintenance tasks. You can add anything you want to the directory, and the
system runs it with "<program-name> --info" when the GUI loads, and the
STDOUT is used to build the menu entry and help screens in the GUI. (Most
of these programs are perl scripts, but they can really be anything.)
Gmoccapy does something similar with NC programs, so this is a fine start,
all it needs is to not involve the configuration file, and it needs another
directory to place scripts.

5) This is the kicker that is missing in most commercial grade CNC
machines. It has a database to track jobs. It keeps track of how many of
each part is made, which components went on which board. (It can tell you
that in spot R5, a resistor of 5.51 ohms, yes it tests each component it
installs, from reel serial number 1234, 20th part from the start of the
reel was installed on board 63 at 11:57:22.10 on 11-2-2015) This also
allows you to do partial assembly of boards, and re-load the board later to
finish it. Where this crosses over to the machining world is a database to
track part programs and associate tool databases with part programs, when
they were last used, and at which point tools were replaced. This should
also track part serial numbers and a timestamp. Also, it would be really
handy to associate machine logs with the part serial number, and which
machine operator was running the machine. (TpSys uses a password that is
unique for each operator, there is no login.)

Asterisk is a phone switch. http://asterisk.org I have been making Asterisk
appliances for 12 years now. Many of them run far in excess of 5 years
between reboots. They are mostly used in office environments with 10-500
phones. They are configured by a web browser, there is no console. I
mentioned this because it is an example of a Linux based appliance that has
to "just work".

As far as a distro goes, I already have a number of my NC machines running
with a custom distro, it is already done. I am happy to make it available.
Everything that is distro specific that I created is GPL.

I have already added a menu to Gmoccapy to handle system tasks like reboot
and shutdown. I replace the exit button in the lower corner with a button
that is only active when the machine is in "off" state, that loads a row of
buttons into the bottom row that handle system tasks.

I realize that Linuxcnc has no official direction. It is like many open
source things I have worked with, it exists due to the needs of many which
are similar but not the same. This is why since I have been posting about
this subject here, I have decided to make a fork of a UI instead of modify
and existing one. This way, the goals I have discussed about moving to an
embedded platform are for the most part isolated to the GUI, and have very
little impact on the core. However, other features that have nothing to do
with being embedded or not are tied into the core. Automatic coordinate
system scaling and rotation for example. These things are totally
unrelated, and are outside of my current project, but it would be fantastic
if someone were to look at this.

-Neil-


> Then it seems you are the perfect person to to build such a distro.
> I was telling _why_  (at least one reason) we don't spend more time on a
> custom os.
> I know nothing of Asterisk. But I must say having a way to run linuxcnc
> 'locked and secure' would be excellent on one of my projects, on another i
> would prefer the way we have it.
>


> Hmm another reference I know nothing of.
> So far you have said that you need the interface to have shutdown and
> reboot.
> Which could be added fairly easy I am pretty sure.
> In fullscreen mode the desktop is not seen.
>
> and you want a stripped down os that is more secure and 'hardened'
> against user tinkering.
>
> Your original question asks why we are not working on such things.
> I would say that because not many of us are making money making
> machines. If I was doing retrofits of machines, selling to manufactures
> then I agree i would want an os like you talking of.
>
> supporting different OSes takes effort and it's not fun effort for most.
> If your custom OS didn't add much burden to the code and was licenced
> properly and you would maintain it .... Maybe the devs would host it.
>
> Personally I would love to see linuxcnc on more machines especially in
> industry. I love seeing the videos of guys retrofitting linuxcnc to
> old iron in money making shops.
>
> But that is not the official direction of linuxcnc - because it has no
> official
> direction. By far and large linuxcnc is pushed forward by people who
>  are interested in a particular feature or a particular challenge.
> There has been many 'discussions' and a fork over this reality.
>
> I would encourage you to work towards you goal - it sounds like a good
>  one. I can't say if linuxcnc will embrace it wholeheartedly.
> I think being able to make the existing screens act more 'embedded'
>  would be excellent for the guys retrofitting old iron.
>
> Chris M
>
>
> ------------------------------------------------------------------------------
> _______________________________________________
> Emc-developers mailing list
> Emc-developers@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-developers
>
------------------------------------------------------------------------------
_______________________________________________
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to