Richard - 

 

While I'm no 7i43 expert, I appear to be part of the small group of those
who have been able to get it to work. It took a while - EMC setup is by no
means on the same level as a USB Hard Drive - I'm hoping that you realize
the reason you are getting so many requests for information on "what is your
system like" is because there is no "cookie cutter" CNC setup out there.
(Well, ok there are some that are close, but EVERYONE wants, needs or
eventually does tweak their system in some fashion.) Part of the reason I
like EMC over other platforms I've implemented before (including Mach, Fanuc
Oi, Siemens, and a couple of asian knockoffs) is that it has no "must be
plugged into this device" assumption. The downside is that there isn't an
"out of the box" solution for EVERY installation. There are wonderful
wizards, but let's face it, motion control is not for the faint of heart.
Paper copies of the integrator manuals, the .PIN files for the 7i43 firmware
you're using, the man pages for hostmot2 are all useful tools you will want
to reference often.

 

I am implementing the 7i43 as part of an "old iron" retrofit of a big-name
3kw gantry laser cutter, circa 1994. I was hoping to keep the original servo
drives, but it's not going to be the case. Due to the size of one of the
servo motors (11kw!) the traditional step/dir "smart positioning" drives I'm
used to (that keep the intelligence in the drive, and practically look like
a stepper motor to EMC) - aren't available, or at least not for the budget.
Thus, I'm moving the PID servo intelligence inside EMC, and as a benefit,
get to go "el cheapo" on the actual amplifier part. 

 

Very Important Note: I knew going into this that the driver support was NOT
official. Or completed. Or Released. All of the openly available
documentation on the EMC and Mesa websites, past mailing list posts and IRC
chats made that VERY, VERY CLEAR. I could also tell that there were some
very intelligent individuals available willing to help. I expected to have
to spend a lot of frustrating hours getting my first link to work, but
weighed the alternatives and still considered this the most appropriate (and
perhaps even fun,option).

 

So, here's a description of My Working Setup: My motherboard of preference
is a Via Epia M10000 Mini-ATX series. I load it up with 1 GB of ram, and
typically put a CF flash drive on for the finished work, but use an old
(10gb) hard drive for provisioning/testing. I haven't liked PCI cards due to
the arrangement of the PCI slot on the Epia - even with a "flipper" card, it
makes the card awkward. That's right, I chose the 7i43 not out of function,
but because it was sexy and easily dropped off the parallel port.
Admittedly, the card fit the budget and functional requirements just fine,
too, but the fact it was small won me over.

 

The bios on this MB was fully updated, to include both EPP 1.7 and EPP 1.9
modes. This is important. Really, really important. It is unlikely, given
recent testing, discussion and the phase of the moon over my shop, that one
would achieve success without this option. That may rule out an old
PC.however, I wouldn't risk my arm, eye, or any other vital organ to an old
PC that couldn't keep up with some realtime PID calcs. I ran an old copy of
puppy-emc on a "reclaimed box" once but wouldn't give it to a customer. Just
a recommendation. 

The BIOS settings were confirmed over the period of a lot of failures. It is
my general belief that this Bios is actually backwards in its selection of
1.7 vs. 1.9 on this MB...but that doesn't matter - what matters is that  one
mode works and the other one doesn't. I chose the one that works. This is a
problem likely specific to the Epia itself.

 

I installed EMC2 from the LiveCD (current ISO), updated everything via the
package manager, then pulled down the current trunk version and compiled it.
This means you now have 2 copies of EMC - you must know where you
extracted/built your trunk version and run everything from there - get rid
of the default launchers/shortcuts on the desktop and build your own with
the proper paths. You could uninstall the original version, or use the
run-in-place options, but I didn't concern myself with this. As you build,
the installer notes are quite clear in describing your next step. I used:
http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?Installing_EMC2#On_Ubuntu_6_06_o
r_8_04_from_source as my roadmap. Update, update, update. If you don't have
the right packages installed, makes will fail. Updates solved that.

 

Just to make sure we got this far, I also ran the(stepper_sim config) - it's
in the sample configs, and makes neat stepper-like noises in the PC speaker,
just to let you know life is good. I always do this. It doesn't prove much
of anything except for a valid install. No need to chase additional ghosts.

 

The 7i43 can be programmed so it retains a firmware in its onboard epprom,
but since I'm still building, I haven't flashed mine yet - I still call a
firmware (.bit file for the Spartan) explicitly in the .hal file. That means
the firmware loader needs to know where to look, and by default it typically
doesn't. This is referred to as symlinking your sandbox, and goes something
like this:

 

$ sudo ln -s $HOME/emc2-sandbox/src/hal/drivers/mesa-hostmot2/firmware
/lib/firmware/hm2

 

The first reference (with the $HOME path) needs to actually point to where
you compiled your trunk version - there are plenty of google references to
help you with this.

 

Power input to the 7i43 is via an external 5v power supply. You can use USB
power if you want, but you can't just plug a USB cable into the USB port -
the board will attempt to enumerate with the MB BIOS. Even if you remove USB
drivers from Ubuntu, the 7i43 will (in my observation) get stuck, doing
what, in fact, it's been told to do: make a USB connection - thus, if you
use the USB power from the MB, remove the D+/D- lines from the cable, or
preferably, just connect 5v to the proper power connector. Jumpers are set
for EPP config (W4 & W5 down), USB Power off (W6 down) - since I'm feeding
power into the external 5v connector - Power Enable is on (W7 up). Data
cabling is via a short (12" long) crimped D25-IDC ribbon cable.

 

After that, I made sure that I could actually get firmware to load into the
7i43 - and the "best" way to do this, IMO, is through the command prompt.
Too much is variable in an untested system, so wanting an ini and hal
fileset at this point is a) useless, and b) a waste of time. I am going to
hope that you already have established communication with your board, but
the pastebin files didn't help me, so for reference:

 

$ halrun

Halcmd: loadrt hostmot2

Halcmd: loadrt hm2_7i43 config="firmware=hm2/7i43/SVST4_4B.BIT"

 

I happen to have the 400k gate Spartan, if you have the 200k version,
substitute "SVST4_4S.BIT" - you should hopefully have read that there are 2
different firmware sets, one for the 400k ("Big") version, and one for the
200k ("Small") version...Note that in my hal file, the same 400k vs. 200k
requirement applies..

 

If the hm2_7i43 component loaded without error, the "hardware" is likely
good to go. If it failed, there is more hunting you have to do, and all the
config files in the world aren't going to help. Here, you really need to
know your system, and track down problems with patience.

 

If you got this far, we can now cheat a bit and you can download my files
from here:

 

http://filebin.ca/hvthwk/m7i43_th.hal and
http://filebin.ca/thqbtc/m7i43_th.ini

 

You will want to put them in their own directory (inside your trunk EMC2
would be nice, but desktop is fine, too)

You will also need to build a .var file, a .tbl file and copy over the
emc.nml file - all as referenced in the ini file, or you can just download
them also from here:

http://filebin.ca/tymdgd/emc.nml and http://filebin.ca/weppbt/m7i43.tbl and
http://filebin.ca/jutbos/m7i43.var

 

Those 5 files, together with a properly configured launcher shortcut will
launch EMC with the Axis gui, and set up 3 PWM servo axes (x,y,z), that
output to the P4 connector on the 7i43. All shared without warranty,
fitness, merchantability or liabilities of any kind.

 

The .hal and .ini files are slightly stripped from my current ones, as I'm
adding less "mill-style" connections to run the laser and various
workholding options, conveyors, limit switches, height sensors, etc. - I
pulled that stuff out to confuse less, and replaced the estop chain with the
"standard/virtual" version - make sure you implement an appropriate physical
estop chain.

 

Hopefully this works for you, but as you probably don't have my exact setup,
there's a chance you may still run into problems. It's important to take it
one step at a time and strip out as much of the complexity as possible, but
I can respect your desire to test against a confirmed functional baseline.

 

Keep at it - you'll get there!

 

Ted.

 

 

 

 

 

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to