#linuxcnc Logs

Nov 07 2022

#linuxcnc Calendar

12:36 AM jpa-: solarwind: they could be BISS interface, if one of them looks like steady clock and otherone like it could be data synchronized to the clock
12:45 AM jpa-: https://www.dynapar.com/technology/encoder_basics/biss_encoders/
12:47 AM solarwind: Yeah it's just a binary value encoded as pulses with a starting mark
12:47 AM solarwind: I can read the exact value now
12:47 AM solarwind: It's incrementing exactly like a binary counter as I turn the shaft by hand
12:48 AM solarwind: definitely for sensing absolute rotor position
01:22 AM solarwind: Ok got it
01:23 AM solarwind: last signal pair is a whole bunch of bits that look like absolute position with high resolution
01:24 AM solarwind: There's a 20µs low before the data comes, so I triggered it on that
01:24 AM solarwind: too many bits to interpret on the scope, but easy enough to capture with a microcontroller
01:27 AM solarwind: looks like multi turn absolute position
01:30 AM solarwind: signal frequency is 250kHz
01:34 AM solarwind: It's also encoded so it's a DC balanced signal
01:40 AM Deejay: moin
02:50 AM travis_farmer: G'Morning, raining cats and dogs ATM...
04:33 AM Tom_L: morning
04:43 AM JT-Cave: morning
06:40 AM solarwind: why does everyone keep saying the time period of day?
06:50 AM pere: it is not the period of the day, it is just a random greeting which happen to be spelled the same way. :)
06:50 AM pere: anyone here understand how the boost-libdir setting in configure is autodetected? In other words, which setting --with-boost-libdir=path overrides. the autodetection fail on armel, armhf and hppa in debian.
06:52 AM pere: I'm logged into the debian armhf porterbox to try to fix this permanently, and the issue is that the boost_python library is not in /usr/lib/, but in a /usr/lib/<arch-name>/ directory.
06:52 AM pere: for armhf, it is /usr/lib/arm-linux-gnueabihf/, but it will be different for armhf, armel and hppa.
06:54 AM solarwind: src/m4/ax_boost_base.m4 and ax_boost_python.m4
06:54 AM pere: do you understand them?
06:54 AM rmu: pere: is hppa still a thing? i thought that platform is dead for a long time already.
06:55 AM pere: rmu: perhaps time to visit the build logs for the debian package, <URL: https://tracker.debian.org/pkg/linuxcnc >.
06:55 AM solarwind: $BOOST_ROOT also has an influence
06:55 AM solarwind: pkg-config would be the way to go
06:56 AM pere: I see no traces of boost in /usr/share/pkgconfig/ which made me rule out pkg-config.
06:56 AM solarwind: well there you go then
06:56 AM solarwind: make sure your pkg-config can find boost
06:58 AM pere: updating config.guess did not affect anything.
06:59 AM solarwind: actually it doesn't look like it's using pkg-config to find boost
06:59 AM solarwind: but if you want to try and fix, ax_boost_base.m4 would be the place to start
06:59 AM pere: solarwind: that is a useless proposal. I need to change linuxcnc to find boost library directory, not boost to provide a different machinery.
06:59 AM solarwind: ...
06:59 AM solarwind: pkg-config is the defacto way to find libraries
07:00 AM solarwind: if pkg-config doesn't know where it is, a lot of other tools won't know how to build for that lib either
07:00 AM pere: is your debian installation providing pkg-config for boost?
07:00 AM solarwind: I don't know, I'm not on it at the moment
07:01 AM pere: if it is, we are probably missing some build dependency.
07:04 AM solarwind: pere give me a min, I"m checking for you
07:08 AM pere: the problem seem to be with multiarch_libsubdir in ax_boost_base.m4
07:10 AM sensille: solarwind: http://www.total-knowledge.com/~ilya/mips/ugt.html
07:11 AM solarwind: so yeah boost doesn't provide .pc files for pkg-config
07:12 AM solarwind: it's a header-only liibrary for the most part so makes sense
07:12 AM solarwind: sensille lol!
07:13 AM pere: found a fix.
07:13 AM solarwind: which is?
07:15 AM pere: <URL: http://paste.debian.net/1259844/ >
07:15 AM solarwind: nice
07:17 AM pere: I guess the fix is similar for hppa.
07:57 AM pere: fix for both arm and hppa pushed to master.
07:59 AM solarwind: pere you're one of the maintainers?
08:00 AM pere: solarwind: of what?
08:00 AM pere: I am a maintainer of a lot of stuff, so not sure what you ask for.
08:01 AM travis__ is now known as travis_farmer
08:09 AM solarwind: pere of linuxcnc
08:12 AM pere: solarwind: aha. I got commit access, but only have limited knowledge of the system, so I focus mostly on the documentation and translation subsystem.
08:12 AM solarwind: Excellent. Documentation is insanely important
08:12 AM pere: will try to join todays video chat on linuxcnc. perhaps I will see you there?
08:14 AM pere: solarwind: perhaps you can help improve the documentation?
08:17 AM solarwind: I didn't even know there was a video chat
08:17 AM solarwind: and I'd love to contribue. I have quite a few patches
08:17 AM solarwind: mostly drivers for specific hardware
08:18 AM solarwind: But yeah I'll join as soon as I clean up the mess behind me in my workshop haha
08:20 AM -!- #linuxcnc mode set to +v by ChanServ
10:21 AM -!- #linuxcnc mode set to +v by ChanServ
11:17 AM CaptHindsight[m]: solarwind: morning is short for "good morning", a typical greeting in the early part of the day
11:19 AM CaptHindsight[m]: also mornin, wasshapping, howzit goin, hey
11:23 AM roycroft: morning can also be an affirmation that one is aware of one's position in the time-space continuum
11:26 AM sinned6915: what section of the docs addresses encoders for position and the like?
11:26 AM sinned6915: like how to add linear scales to provide position feedback
11:34 AM sinned6915: i am more interested in hardware compatibility at this point
11:54 AM jpa-: sinned6915: http://linuxcnc.org/docs/html/config/integrator-concepts.html#_servo_systems
11:54 AM jpa-: it's not particularly well documented, but that's the closest i know :)
11:55 AM jpa-: most people use encoders with quadrature interfaces, and connect them either to parallel port or to a mesa card; then in HAL configuration you connect the position to the feedback pin of the motion module
12:09 PM sinned6915: do i need absolute function or will incrementals work?
12:10 PM jpa-: incrementals will work, but then you'll need a homing or endstop switch also
12:23 PM -!- #linuxcnc mode set to +v by ChanServ
12:33 PM sinned6915: ok, that will work for me.
12:40 PM CaptHindsight[m]: sinned6915: encoders on LPT ports are only for slower or lower res applications, encoder reads are limited by the relatively slow thread times vs using a hardware counter
12:41 PM pere: LinuxCNC video chat in 20 minutes on <URL: https://meet.jit.si/LinuxCNC-meeting-november-2022 >
12:42 PM JT-Shop: step 1 remove viasat dish... done
12:44 PM roycroft: did you use dynamite to remove it?
12:44 PM roycroft: i bet it would blow up real good
12:44 PM CaptHindsight[m]: JT-Shop: kind of like going from dial-up to cable internet
12:45 PM travis_farmer: Hmmm... sadly i won't be able to make the video chat meeting... not like i will be missed anyway. ;)
12:45 PM CaptHindsight[m]: roycroft: 😄
12:46 PM CaptHindsight[m]: The Morning Report and the Russia skits are my favorites
12:47 PM CaptHindsight[m]: Morning/Farm Film
12:49 PM roycroft: not to mention the mckenzie brothers, eh?
12:52 PM sinned6915: CaptHindsight[m]: will they be ok for postion readout on small cnc machine, speeds of <50in/min
12:52 PM CaptHindsight[m]: Happy Wanderers
12:53 PM roycroft: the back story about the mckenzie brothers is interesting
12:53 PM roycroft: sctv aired on the cbc
12:53 PM CaptHindsight[m]: sinned6915: well the fastest base thread times are on the 20-25uS range for the lowest latency PC's
12:53 PM roycroft: there was a domestic version an an international syndicated version
12:53 PM sinned6915: CaptHindsight[m]: considering rpi4+Remora on LPC or STM base controller
12:54 PM sinned6915: CaptHindsight[m]: i dont understand the base thread times
12:54 PM roycroft: the cbc asked the producers to make the domestic version of the show 2 minutes longer than the international version, and to ensure that extra two minutes was canadian content
12:54 PM roycroft: so the mckenzie brothers were added as "canadian content"
12:54 PM CaptHindsight[m]: so if you need to sample at at least 2x and have a at least 3-4 encoder counts per step....
12:55 PM CaptHindsight[m]: sinned6915: on a LPT port in a PC the base thread time would be the cycle time of one read at a LPT pin
12:56 PM CaptHindsight[m]: sinned6915: rpi4's are difficult or expensive to come by
12:57 PM sinned6915: i have one squireled away for 'special project', trying to figure out if this is worth it
12:57 PM CaptHindsight[m]: but rpi4+Remora is different, the encoders would be read by hardware counters in a microcontroller
12:58 PM CaptHindsight[m]: so depending on the micro the counter will likely be in the few MHz range
01:00 PM CaptHindsight[m]: I haven't gotten around to replacing the Rpi4 with a different ARM/RISC-V board and Remora so i don't know how fast you can reliably count encoder pulses
01:00 PM CaptHindsight[m]: I'd ask on the forums, there are some very long threads on this
01:01 PM sinned6915: hmm
01:01 PM sinned6915: https://lounge.mikkel.cc/uploads/84dbe3df22e6828b/image.png
01:02 PM sinned6915: so that is 270 KHz or so
01:03 PM CaptHindsight[m]: too fast for an LPT port, but not for a micro or FPGA
01:04 PM sinned6915: does my math look in the ballpark?
01:05 PM sinned6915: 1/250kHz => 4*10^-6 seconds
01:06 PM CaptHindsight[m]: CaptHindsight: yes I'd ask Scott on the forums about the latest state of this https://github.com/scottalford75/Remora/issues/12
01:06 PM sinned6915: yes, i have a couple of posts in there about using a different STM based board than they are using.
01:06 PM JT-Shop: bbl
01:07 PM CaptHindsight[m]: there are also mesa cards or the colorlight cards
01:07 PM CaptHindsight[m]: sinned6915: ^^
01:07 PM roguish[m]: JT-Shop: are you going to joing the meeting online
01:07 PM CaptHindsight[m]: meeting started 5 minutes ago
01:07 PM sinned6915: there is a meeting?
01:07 PM sinned6915: sorry to keep you
01:07 PM roguish[m]: just getting going now
01:07 PM CaptHindsight[m]: but so far no meeting :)
02:04 PM sensille: hm. i managed to generate etherhm2.vhd, but it is different
02:10 PM solarwind: Speaking of encoders, this is the final signal from the unknown encoder on the servos I acquired a while ago: https://images2.imgbox.com/d7/93/Gnx2sByx_o.png
02:10 PM solarwind: The trigger is on a low pulse for > 20µs
02:11 PM solarwind: If the shaft is not moved, the signal stays the same
02:11 PM solarwind: The first few pulses as well as the group of pulses 2/3 the way down (the ones grouped tightly) seem to not change as I rotate the shaft
02:11 PM solarwind: the scale is 20µs/div
02:12 PM solarwind: And the rest of the pulses seem to change very fast with very little rotation, so obviously there's a lot of resolution.
02:12 PM solarwind: Anyone recognize this signal?
02:13 PM solarwind: I don't think there's a separate clock line, so my guess is that it's Manchester encoded/DC balanced
02:14 PM solarwind: when I rotate the shaft, the pulses that do change almost look like they're shifting the way the bits in a binary counter do as it is incremented. ZincBoy[CAON][m] / CloudEvil perhaps you guys recognize this? '
02:14 PM CloudEvil: I don't off-hand
02:15 PM solarwind: There's also 2 pairs of differential signals for your bog standard A/~A/B/~B quadrature outputs at 1,000 pulses/rev for whatever reason. This signal looks far more useful though
02:16 PM solarwind: I think I just have to rotate the shaft with a stepper and data log the signal with a microcontroller to analyze it
02:18 PM solarwind: This and this are the servos https://www.ebay.com/itm/125406601080 https://www.ebay.com/itm/125406601861 I got them for free pretty much. Of course there's no datasheet
02:26 PM CaptHindsight[m]: Omron currently offers incremental and absolute encoders
02:26 PM CaptHindsight[m]: no idea what they offered years ago
02:27 PM CaptHindsight[m]: their current incremental only mention quadrature outputs
02:27 PM solarwind: The date on these is "00.04" whatever the hell that means
02:27 PM solarwind: The label reads "OTC Daihen Corporation" ... "Sankyo Seiki Mfg Co Ltd". "Made in Japan"
02:27 PM CloudEvil: solarwind: It could simply be a posiion signal grey coded, for example, clocked by the quadratures, for example
02:28 PM CaptHindsight[m]: Heidenhain has some proprietary encoder signaling
02:28 PM CaptHindsight[m]: just because
02:28 PM solarwind: CloudEvil the quadratures are clocked waaaaaay slower than this signal
02:28 PM solarwind: This signal is switching at 250kHz
02:28 PM CloudEvil: ah
02:28 PM solarwind: CaptHindsight[m] there's _definitely_ a pattern to this signal
02:28 PM solarwind: the pulses are shifting like a binary counter
02:29 PM solarwind: and it feels very much multi turn absolute position as far as I can see
02:30 PM CaptHindsight[m]: maybe a combo
02:30 PM CaptHindsight[m]: outputs incremental and absolute
02:30 PM solarwind: I also agree with the gray code bit, I think it has that aspect to it
02:30 PM solarwind: CaptHindsight[m] yeah the second set of pulses seems like a very high resolution part of it whereas the first set increments slower
02:32 PM CaptHindsight[m]: Incremental Serial Interface (ISI)
02:32 PM CaptHindsight[m]: Asynchronous Serial Interface (ASI)
02:32 PM -!- #linuxcnc mode set to +v by ChanServ
02:32 PM -!- #linuxcnc mode set to +v by ChanServ
02:33 PM CaptHindsight[m]: Synchronous Serial Interface (SSI)
02:35 PM CaptHindsight[m]: https://www.tr-electronic.com/f/TR-E-TI-GB-0018
02:35 PM CaptHindsight[m]: https://en.wikipedia.org/wiki/Synchronous_Serial_Interface
02:40 PM JT-Shop: normal service has been restored
02:40 PM -!- #linuxcnc mode set to +v by ChanServ
02:43 PM CaptHindsight[m]: CloudEvil: what was so special about Manchester that they named a code after it?
02:48 PM solarwind: Ok so the rotor position is Gray code (the one with 6 possible values for the BLDC driver)
02:48 PM solarwind: all the numbers make sense
02:48 PM solarwind: I just decoded the values
02:48 PM solarwind: This signal is probably that as well
02:57 PM CaptHindsight[m]: not related https://us.misumi-ec.com/pdf/fa/2010/p3515-3536.pdf
02:58 PM CaptHindsight[m]: Selection of Timing Belts
05:14 PM -!- #linuxcnc mode set to +v by ChanServ
05:14 PM * JT-Shop is glad that job is done
05:15 PM Tom_L: haning satelites or transmissions?
05:15 PM JT-Shop: dish work on the roof
05:16 PM Tom_L: hanging
05:16 PM JT-Shop: that JLG lift sure made it easier
06:38 PM ve7it: g'day... anyone thought of using a free pool table as a nice sturdy flat base for a CNC router project?
06:39 PM Rab: Never!
06:41 PM roycroft: only if it has red felt
06:41 PM roycroft: teh green felt is too boring
06:42 PM Tom_L: the felt would get tangled in the cutter. best to remove it
06:42 PM roycroft: but you know, if you're making small parts in production it could be great for a router
06:42 PM Rab: I've thought of using optical tables, which come up for auction here not infrequently. But I don't know whether they can support a serious load without deflecting. There is some kind of honeycomb core, but I don't know if it's aluminum or cardboard or what.
06:42 PM roycroft: you could mount a cue stick in one of the tool holders
06:43 PM Rab: E.g. https://www.newport.com/g/optical-tables
06:43 PM roycroft: and after you finish routing a batch of parts you can just tap them into the pockets to clear the table, and start on the next batch
06:44 PM roycroft: and tom_l: you can stabilize the felt with epoxy
06:45 PM Tom_L: or just spill enough drinks on it
06:45 PM roycroft: that too
07:50 PM andypugh_ is now known as andypugh