I've been using the Artisan program for some time now on an Ambex ym2 with
an Omega data logger and a 2 ghz dual core laptop. I just loaded 0.8 and
I'm hoping that I might get smoother ROR values with this version as I see
that is one of the improvements. Maybe the issue is the fast response of my
probes? Is there a way to compensate for this in Artisan? Can you make
some recommendations as to the EXTRA settings for the newer version and
maybe something up to date about the effects of using values too large or
too small? My ROR just jumps around too much and by the time it's
dropping/rising too rapidly it's almost too late for me to do anything about
it. Could I benefit (or not and why) from using over sampling or a higher
or lower sample rate? I'm at 4.0 now. Which curve smoothing values affect
real time displays and which don't? I've been reading Scott Rao's new book
and find myself evaluating my roasts and looking carefully at ROR and 1st to
drop percentages so Artisan is so useful. Thanks so much to all that have
contributed to this great program.
Fred
Dear Rob,
both features are rather experimental and should generally be disabled. Problems with spikes usually indicate a hardware setup issue that might result from EMV effects, ground loops or communication drops. The "Drop Spikes" feature tries to detect spikes during recording testing for sudden drops and rises. The "Smooth Spikes" is a conservative spike filter that is applied after recording and might be able to eliminate smaller spikes completely.
Both of your spikes seem to last for more than one sample, which is extra bad and both Artisan spike features might not be able to cope with those.
Try to identify the source of the spikes, which seem to be hardware related.
Marko
On 20.10.2014, at 23:36, Rob Gardner wrote:
> How do the "smooth spike" and "drop spike" features work? I've been playing with them for a long time, and I cannot seem to get them to do what I need. See attached graph for a quick and easy idea of what I need. ;)
>
> Rob
>
>
> --
> "If this is coffee, please bring me some tea; but if this is tea, please bring me some coffee." -- Abraham Lincoln
>
> "The thing about quotes on the internet is that you cannot confirm their validity." --Abraham Lincoln
>
> Sent from my iPalmDroidBerry7
> <1. Ethiopia 150g 20-Oct.pdf>_______________________________________________
> Artisan-User mailing list
> Artisan-User(a)lists.einfachkaffee.de
> https://lists.mokelbu.de/listinfo/artisan-user
How do the "smooth spike" and "drop spike" features work? I've been playing
with them for a long time, and I cannot seem to get them to do what I need.
See attached graph for a quick and easy idea of what I need. ;)
Rob
--
"If this is coffee, please bring me some tea; but if this is tea, please
bring me some coffee." -- Abraham Lincoln
"The thing about quotes on the internet is that you cannot confirm their
validity." --Abraham Lincoln
Sent from my iPalmDroidBerry7
Thanks for the sed syntax Rob, it works a treat.
Marko has been able to find a fix for the code too.
Thank you both :)
On 08/10/14 14:43, Rob Gardner wrote:
> It looks like artisan doesn't like the blank T2 field in your csv
> file. You could fake it with this:
>
> sed -e 's/, ,/,0.0,/' < 09\ Corretto\ roast.csv >new_correto.csv
>
> Or redo the roastlogger output telling it to generate something for
> T2, or else don't have a T2 field at all.
>
> Rob
>
>
> On Tue, Oct 7, 2014 at 9:18 PM, justin <jwornes(a)hotmail.com
> <mailto:jwornes@hotmail.com>> wrote:
>
> I’ve tried to import Roastlogger CSV’s without success. Has anyone
> else tried it?
> System info
> Artisan 0.8.0 on Ubuntu 14.04 LTS (up to date via updating service)
> Roastlogger data generated using version 2.1.5
> File, Import, Roastlogger – I get;
> Exception: fileimport(): could not convert string to float: @line
> 10945
> File, Import, CSV – I get;
> Readings imported
> Though nothing appears on the Roaster Scope.
> I’ve had a look around to see if I can see if any of the data has
> imported but can’t seem to see any changes.
> The Roastlogger CSV I’ve tried can be found here;
> http://tinyurl.com/lq8s9hd
> If anyone else wishes to try.
>
> _______________________________________________
> Artisan-User mailing list
> Artisan-User(a)lists.einfachkaffee.de
> <mailto:Artisan-User@lists.einfachkaffee.de>
> https://lists.mokelbu.de/listinfo/artisan-user
>
>
>
>
> --
> "If this is coffee, please bring me some tea; but if this is tea,
> please bring me some coffee." -- Abraham Lincoln
>
> "The thing about quotes on the internet is that you cannot confirm
> their validity." --Abraham Lincoln
>
>
> Sent from my iPalmDroidBerry7
>
Justin,
could you send me the RoastLogger file that causes the troubles. That importer code was donated by someone and I never used it myself. Maybe something on the RoastLogger side changed. I just saw that this code links the data format parsing the OS locale, which might break on locale settings different than english.
I will investigate this once I received your file,
Marko
On 08.10.2014, at 05:43, Rob Gardner wrote:
> It looks like artisan doesn't like the blank T2 field in your csv file. You could fake it with this:
>
> sed -e 's/, ,/,0.0,/' < 09\ Corretto\ roast.csv >new_correto.csv
>
> Or redo the roastlogger output telling it to generate something for T2, or else don't have a T2 field at all.
>
> Rob
>
>
> On Tue, Oct 7, 2014 at 9:18 PM, justin <jwornes(a)hotmail.com> wrote:
> I’ve tried to import Roastlogger CSV’s without success. Has anyone else tried it?
>
> System info
> Artisan 0.8.0 on Ubuntu 14.04 LTS (up to date via updating service)
> Roastlogger data generated using version 2.1.5
>
> File, Import, Roastlogger – I get;
> Exception: fileimport(): could not convert string to float: @line 10945
>
> File, Import, CSV – I get;
> Readings imported
> Though nothing appears on the Roaster Scope.
>
> I’ve had a look around to see if I can see if any of the data has imported but can’t seem to see any changes.
> The Roastlogger CSV I’ve tried can be found here;
> http://tinyurl.com/lq8s9hd
> If anyone else wishes to try.
>
> _______________________________________________
> Artisan-User mailing list
> Artisan-User(a)lists.einfachkaffee.de
> https://lists.mokelbu.de/listinfo/artisan-user
>
>
>
>
> --
> "If this is coffee, please bring me some tea; but if this is tea, please bring me some coffee." -- Abraham Lincoln
>
> "The thing about quotes on the internet is that you cannot confirm their validity." --Abraham Lincoln
>
> Sent from my iPalmDroidBerry7
> _______________________________________________
> Artisan-User mailing list
> Artisan-User(a)lists.einfachkaffee.de
> https://lists.mokelbu.de/listinfo/artisan-user
I’ve tried to import Roastlogger CSV’s without success. Has anyone else tried it?
System info
Artisan 0.8.0 on Ubuntu 14.04 LTS (up to date via updating service)
Roastlogger data generated using version 2.1.5
File, Import, Roastlogger – I get;
Exception: fileimport(): could not convert string to float: @line 10945
File, Import, CSV – I get;
Readings imported
Though nothing appears on the Roaster Scope.
I’ve had a look around to see if I can see if any of the data has imported but can’t seem to see any changes.
The Roastlogger CSV I’ve tried can be found here;
http://tinyurl.com/lq8s9hd
If anyone else wishes to try.
Marko:
Rob’s view is similar to mine: the external program for I/O functions can be a quick, easy, and effective way to get Artisan working with an arbitrary system. Further, as more devices become web enabled, it will be relatively easy to send and receive info to/from them via whatever protocols they use, and having the ability to write a simple Artisan interface program could reduce/eliminate the need to continually add support for new devices.
For my immediate needs, adding as many as four additional channels to the ‘program’ device would be of great help (I’d use them as BT_RoR, ET_RoR, PCT_PWR, AT). A ‘program device’ capability associated with the Power slider would also be fantastic. (i.e., have an external program that would be called whenever the slider was moved and allow me to transmit the new setting).
Thanks!
Phil
From: Rob Gardner [mailto:robmatic@gmail.com]
Sent: Monday, October 06, 2014 2:13 AM
To: Marko Luther
Cc: West, Phil; artisan-user(a)lists.einfachkaffee.de
Subject: Re: [Artisan-user] Multichannel Wi-Fi input question
Not speaking for Phil, but I think it would be very useful to have the ability to "run a program" as a general option in lots of places. That ability was crucial to me when I wanted to interface my first datalogger (Uei DT301) which was not supported by Artisan. I reverse engineered the serial protocol, and then just wrote a small program that could read the temp from the DT301 and print it out, then set up Artisan to just run that program. It worked beautifully. Recently I was thinking about not only using a slider to represent a fan speed setting, but also to control it. But in the slider "action" dropdown, there is no option to run a program, so if I want to do this, I must use an existing supported interface.... the 'run program' option gives great power to use new and unsupported devices. Anyway, adding a couple more channels that can be read using a program will probably be useful.
Rob
On Sun, Oct 5, 2014 at 10:44 PM, Marko Luther <marko.luther(a)gmx.net<mailto:marko.luther@gmx.net>> wrote:
Hi Phil,
On 06.10.2014, at 02:18, West, Phil wrote:
> Marko,
> I just did a couple of roasts by bringing in just the ET and BT using the
> Œprogram¹ device and it worked great. In fact, I didn¹t even need to
> write a program‹I just typed the curl command (curl
> arduino.local/arduino/Artisan) directly into the dialog box, and it worked
> first try! I am very impressed with Artisan, it¹s a wonderful application.
Excellent! Didn't know that this program thing this works after all those years remaining untouched. I could extend that for you to read two more channels
> Concerning the suggestion of using the TC4 interface, I don¹t understand
> the idea. I have no serial connection between my laptop and the Yun, only
> the wifi connection. Am I missing something here?
The alternative is to write a short script that implements the TC4/aArtisan serial protocol. Essentially, Artisan is sending a "READ" string and the TC4/aArtisan answers with a list of temperatures like
<AT>,<C1>,<C2>,<C3>,<C4>,<E5>,<E6>,<E7>,<E8>
where AT is the internal Arduino temperature, C1-C4 are the 4 TC4 temperature channels, and E5-E8 are used by the Arduino PID mechanism to transmit extra informations like PID% output. There is another command "CHAN" that is issued by Artisan on opening the connect that you could just ignore.
I can try to dig out the exact protocol definition and forward it to you or alternatively add support for channels 3+4 following solution 1 above.
Let me know,
Marko
>
> Thanks,
> Phil
>
> On 10/5/14, 4:23 PM, "Marko Luther" <marko.luther(a)gmx.net<mailto:marko.luther@gmx.net>> wrote:
>
>> Phil,
>>
>> Rob is right. Artisan does not allow to feed in your own RoR data.
>> However, it computes it from the given temperature curves and allows a
>> variety of smoothing configurations (even growing in the next version).
>>
>> Regarding the program device. That one is rather historic and as far as I
>> know supports only to feed two channels (ET and BT). However, I would
>> like to suggest to implement the TC4/aArduino simple text-based serial
>> protocol directly on your Yun. This allows you by now to feed 8 channels
>> in total. Should be enough.
>>
>> Marko
>>
>> On 03.10.2014, at 19:42, Rob Gardner wrote:
>>
>>> I don't know of a way to "bring in" RoR, but you can easily have
>>> Artisan calculate that itself. Artisan has many options for doing the
>>> calculation, so unless you have some very specific calculation of your
>>> own, this problem is probably best solved by allowing Artisan to do it.
>>>
>>> As for controlling external stuff, you can configure buttons and
>>> sliders for events, and these can be set up to run or call an external
>>> program when changed, which should allow you to control power. To set
>>> this up, go into config-->events and add a button or a slider; Each of
>>> those has an associated "action", and you can choose "call program".
>>> I've never tried it, but been thinking about it doing just what you're
>>> talking about.
>>>
>>> Rob
>>>
>>>
>>> On Fri, Oct 3, 2014 at 8:06 AM, West, Phil <Phil.West(a)gtri.gatech.edu<mailto:Phil.West@gtri.gatech.edu>>
>>> wrote:
>>> (sorry if this turns into a duplicate‹my original post was rejected
>>> because the list server didn¹t recognize my email address)
>>>
>>>
>>>
>>> Hello:
>>>
>>> My roaster is a stirred turbo oven configuration with an Arduino Yun
>>> managing temperature logging and power control. The Yun is directly
>>> connected to the roaster hardware and connects to my laptop via Wi-Fi
>>> for logging and control input. I currently use a simple JavaScript
>>> application on my laptop to control and log the roast, but think Artisan
>>> would be more powerful, especially with respect to managing historical
>>> data.
>>>
>>>
>>>
>>> To be explicit, here's how my current setup works. The Arduino
>>> asynchronously samples the BT and ET, filters these values and estimates
>>> RoR (I call these three values the state estimate). At any time, my
>>> laptop can issue a web query over Wi-Fi, and the Yun will report the
>>> current state estimate. If the control input on the laptop (the Percent
>>> Power) changes, the PC sends a Web post over to the Yun, and it modifies
>>> the PWM power control. In summary, then, my roaster controller is
>>> implemented via a simple Wi-Fi protocol and it has 3 outputs (BT, ET,
>>> RoR) and requires 1 input (pct pwr). The queries can be periodic, or
>>> not. I should point out that I realize that I could set up Artisan to
>>> oversample BT and ET, and compute RoR for me, but, if possible, I¹d
>>> prefer to leave all that to the Kalman filter inside my controller.
>>>
>>>
>>>
>>> Question 1:
>>>
>>> It's easy to grab the BT and ET via the 'program' radio button on the
>>> Device Assignment form and using a simple external python script to grab
>>> my data. But there's no obvious way to bring in RoR. I notice that
>>> 'Extra Devices' has a 'program' option--is this a more flexible way to
>>> read in data? If so, how do I do it? Could I read in {BT, ET, RoR,
>>> PctPwr} and plot it?
>>>
>>>
>>>
>>> Question 2:
>>>
>>> Can I manage/control the power from within Artisan? I don't see any
>>> control knobs or sliders, so maybe not. On the other hand, Artisan is
>>> designed to work with PID controllers, which suggests that it must be
>>> capable of outputting some kind of control signal. Alternately, if I
>>> could simply log a fourth value (percent pwr) coming back from my
>>> roaster, then I could easily control it from a simple external program.
>>>
>>>
>>>
>>> Thanks for any guidance on how I can set this up.
>>>
>>>
>>>
>>> -Phil
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Artisan-User mailing list
>>> Artisan-User(a)lists.einfachkaffee.de<mailto:Artisan-User@lists.einfachkaffee.de>
>>> https://lists.mokelbu.de/listinfo/artisan-user
>>>
>>>
>>>
>>>
>>> --
>>> "If this is coffee, please bring me some tea; but if this is tea,
>>> please bring me some coffee." -- Abraham Lincoln
>>>
>>> "The thing about quotes on the internet is that you cannot confirm
>>> their validity." --Abraham Lincoln
>>>
>>> Sent from my iPalmDroidBerry7
>>> _______________________________________________
>>> Artisan-User mailing list
>>> Artisan-User(a)lists.einfachkaffee.de<mailto:Artisan-User@lists.einfachkaffee.de>
>>> https://lists.mokelbu.de/listinfo/artisan-user
>>
>
--
"If this is coffee, please bring me some tea; but if this is tea, please bring me some coffee." -- Abraham Lincoln
"The thing about quotes on the internet is that you cannot confirm their validity." --Abraham Lincoln
Sent from my iPalmDroidBerry7
Phil,
Rob is right. Artisan does not allow to feed in your own RoR data. However, it computes it from the given temperature curves and allows a variety of smoothing configurations (even growing in the next version).
Regarding the program device. That one is rather historic and as far as I know supports only to feed two channels (ET and BT). However, I would like to suggest to implement the TC4/aArduino simple text-based serial protocol directly on your Yun. This allows you by now to feed 8 channels in total. Should be enough.
Marko
On 03.10.2014, at 19:42, Rob Gardner wrote:
> I don't know of a way to "bring in" RoR, but you can easily have Artisan calculate that itself. Artisan has many options for doing the calculation, so unless you have some very specific calculation of your own, this problem is probably best solved by allowing Artisan to do it.
>
> As for controlling external stuff, you can configure buttons and sliders for events, and these can be set up to run or call an external program when changed, which should allow you to control power. To set this up, go into config-->events and add a button or a slider; Each of those has an associated "action", and you can choose "call program". I've never tried it, but been thinking about it doing just what you're talking about.
>
> Rob
>
>
> On Fri, Oct 3, 2014 at 8:06 AM, West, Phil <Phil.West(a)gtri.gatech.edu> wrote:
> (sorry if this turns into a duplicate—my original post was rejected because the list server didn’t recognize my email address)
>
>
>
> Hello:
>
> My roaster is a stirred turbo oven configuration with an Arduino Yun managing temperature logging and power control. The Yun is directly connected to the roaster hardware and connects to my laptop via Wi-Fi for logging and control input. I currently use a simple JavaScript application on my laptop to control and log the roast, but think Artisan would be more powerful, especially with respect to managing historical data.
>
>
>
> To be explicit, here's how my current setup works. The Arduino asynchronously samples the BT and ET, filters these values and estimates RoR (I call these three values the state estimate). At any time, my laptop can issue a web query over Wi-Fi, and the Yun will report the current state estimate. If the control input on the laptop (the Percent Power) changes, the PC sends a Web post over to the Yun, and it modifies the PWM power control. In summary, then, my roaster controller is implemented via a simple Wi-Fi protocol and it has 3 outputs (BT, ET, RoR) and requires 1 input (pct pwr). The queries can be periodic, or not. I should point out that I realize that I could set up Artisan to oversample BT and ET, and compute RoR for me, but, if possible, I’d prefer to leave all that to the Kalman filter inside my controller.
>
>
>
> Question 1:
>
> It's easy to grab the BT and ET via the 'program' radio button on the Device Assignment form and using a simple external python script to grab my data. But there's no obvious way to bring in RoR. I notice that 'Extra Devices' has a 'program' option--is this a more flexible way to read in data? If so, how do I do it? Could I read in {BT, ET, RoR, PctPwr} and plot it?
>
>
>
> Question 2:
>
> Can I manage/control the power from within Artisan? I don't see any control knobs or sliders, so maybe not. On the other hand, Artisan is designed to work with PID controllers, which suggests that it must be capable of outputting some kind of control signal. Alternately, if I could simply log a fourth value (percent pwr) coming back from my roaster, then I could easily control it from a simple external program.
>
>
>
> Thanks for any guidance on how I can set this up.
>
>
>
> -Phil
>
>
>
>
> _______________________________________________
> Artisan-User mailing list
> Artisan-User(a)lists.einfachkaffee.de
> https://lists.mokelbu.de/listinfo/artisan-user
>
>
>
>
> --
> "If this is coffee, please bring me some tea; but if this is tea, please bring me some coffee." -- Abraham Lincoln
>
> "The thing about quotes on the internet is that you cannot confirm their validity." --Abraham Lincoln
>
> Sent from my iPalmDroidBerry7
> _______________________________________________
> Artisan-User mailing list
> Artisan-User(a)lists.einfachkaffee.de
> https://lists.mokelbu.de/listinfo/artisan-user
(sorry if this turns into a duplicate-my original post was rejected because the list server didn't recognize my email address)
Hello:
My roaster is a stirred turbo oven configuration with an Arduino Yun managing temperature logging and power control. The Yun is directly connected to the roaster hardware and connects to my laptop via Wi-Fi for logging and control input. I currently use a simple JavaScript application on my laptop to control and log the roast, but think Artisan would be more powerful, especially with respect to managing historical data.
To be explicit, here's how my current setup works. The Arduino asynchronously samples the BT and ET, filters these values and estimates RoR (I call these three values the state estimate). At any time, my laptop can issue a web query over Wi-Fi, and the Yun will report the current state estimate. If the control input on the laptop (the Percent Power) changes, the PC sends a Web post over to the Yun, and it modifies the PWM power control. In summary, then, my roaster controller is implemented via a simple Wi-Fi protocol and it has 3 outputs (BT, ET, RoR) and requires 1 input (pct pwr). The queries can be periodic, or not. I should point out that I realize that I could set up Artisan to oversample BT and ET, and compute RoR for me, but, if possible, I'd prefer to leave all that to the Kalman filter inside my controller.
Question 1:
It's easy to grab the BT and ET via the 'program' radio button on the Device Assignment form and using a simple external python script to grab my data. But there's no obvious way to bring in RoR. I notice that 'Extra Devices' has a 'program' option--is this a more flexible way to read in data? If so, how do I do it? Could I read in {BT, ET, RoR, PctPwr} and plot it?
Question 2:
Can I manage/control the power from within Artisan? I don't see any control knobs or sliders, so maybe not. On the other hand, Artisan is designed to work with PID controllers, which suggests that it must be capable of outputting some kind of control signal. Alternately, if I could simply log a fourth value (percent pwr) coming back from my roaster, then I could easily control it from a simple external program.
Thanks for any guidance on how I can set this up.
-Phil