On Monday 09 October 2017 11:45:58 Nicklas Karlsson wrote:

> > > There ARM M is tiny and dirt cheap and is very good for real-time
> > > work.  I have a robot with four motors and encoders and get 44,000
> > > interrupts per second
> > > and much better real time latencies then from any Linux based
> > > solution on any platform.
> > >
> > > My solution for robot control is a hierarchy with ARM M for the
> > > lowest level, then
> > > Raspberry Pi 3 connected by high speed serial.
>
> Right now I am at this point with high speed serial communication to
> ARM for the lowest level.
>
> > I did succeed in building a fully rt-preempt 4.9 kernel on it today,
> > took about 4 hours, but I've not yet attempted to boot it as I saw
> > some stuff go by during the build (when I wasn't checking my eyelids
> > for leaks :) that I yet need to turn off.  I think, other than fine
> > tuning the kernel build, that convincing the hm2_rpspi driver that
> > it should run on the rock's rk3328, arm64 quad core SoC, running at
> > up to 1.5GHz should be the last major hurdle to making linuxcnc run
> > on it, ...
>
> Happen to know how many SPI ports there may be?
>
This driver that Bertho Stultans wrote, can do 5. Over 2 pin groups IIRC. 
However since I was the lab rat, only the SPI1 set has been extensively 
tested.

>From the bottom of the pi's 7i90-axis.ini file:
[HOSTMOT2]
DRIVER                          =       hm2_rpspi
BOARD                           =       7i90
CONFIG  =       "num_encoders=4 num_pwmgens=2 num_stepgens=4"
-----------------------------
and from the top of the .hal file:
# hostmot2 driver
loadrt hostmot2

# load low-level driver
loadrt  [HOSTMOT2](DRIVER) config=[HOSTMOT2](CONFIG) spiclk_rate=41666 
spiclk_rate_rd=25000
-----------
The above is all one line
the "rates" are the write, and read, clock rates, corresponding IIRC to a 
41 megabaud write to the 7i90 rate, and a slower 25 megabaud rate for 
reading back the data from the 7i90.

Both of those rates could probably be improved with stronger, as in 
faster rise and fall times in the pi's pin drivers, they are a tad puny.

The interconnect cable between the pi and the 7i90 is only about an inch 
long, achieved by mounting the pi upside down on 1" tall nylon standoffs 
and the header connections aligned with the 26 pin socket on the 7i90. 
Just in case, an old video card fan is mounted under the pi, running on 
the pi's 5 volt supply.

The 7i90 is the bottom of the stack in that box as there's 3 7i42TA's 
stacked over the 7i90, between the 7i90 and the real world.  Stops all 
that noise & overvoltage BS that blew several 7i90's by the time I 
understood that I just couldn't put it in the same box with the stepper 
& vfd stuffs. In a separate box, the noise is quite low, and not 
sufficient to effect operations in any way.

> Regards Nicklas Karlsson

Cheers Nicklas, Gene Heskett
-- 
"There are four boxes to be used in defense of liberty:
 soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
Genes Web page <http://geneslinuxbox.net:6309/gene>

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to