'Pressure Profiling' With The Fluid-O-Tech TMFR Pump - Or, Wholesale Copying Greg Scace's Ideas - Page 24

Need help with equipment usage or want to share your latest discovery?
User avatar
indend007
Posts: 232
Joined: 13 years ago

#231: Post by indend007 »

That's good new!
I really expect your video

Cheers!

User avatar
Carneiro
Posts: 1153
Joined: 15 years ago

#232: Post by Carneiro »

One more info to add, yet no video.

It seems the maximum power I have to use is around 30W to reach almost 3000 RPM - for a very slow ristretto at 12 bar (maximum differencial pressure allowed).

This motor is much more that we need. Of course one can use the extra speed to more flow if the pressure is low, for instance, to fill a boiler or do a flush.

As far as I know, LM uses the MGCF11S series, that seems to be maximum 3000 rpm and around 25-30W power. But it seems to me that you have to drive this motor using a controlled power source, and I have no idea if the speed is linear to power input. It should be cheaper though.

Márcio.

User avatar
Jacob
Posts: 367
Joined: 18 years ago

#233: Post by Jacob »

In order to design the interface between my GS3 and the Arduino micro controller that I'm making for controlling the pressure/flow profiling system, I had to map out the weiring of the GS3.



On question remained unanswered though:
How on earth am I going to detect if the on/off-timer is turning the machine on or putting the machine back into standby mode?
I do have a work around, but it's not very elegant and I would prefer to find somewhere on board where I could read a voltage when the machine is on and no voltage when the machine is in standby-mode. Bill?

User avatar
tekomino
Posts: 1105
Joined: 14 years ago

#234: Post by tekomino »

Jacob wrote:How on earth am I going to detect if the on/off-timer is turning the machine on or putting the machine back into standby mode?
First very cool, please post updates as you go through the build.

I am sure there's got to be somewhere inside you can tap to detect this... But if all else fails, I'd try Non-Invasive Current Sensor.

User avatar
Jacob
Posts: 367
Joined: 18 years ago

#235: Post by Jacob »

My pump/motor has reached the local delivery center - soon It'll be christmas :D

meanwhile I'll have allot of fun learning to program the microprocessor 8)
And learning about the GS3 at the same time :wink:

This shows the state of the machine (when on), shot time and the number of seconds between flow meter clicks. Output via serial interface updated 10 times a second. Filler-valve, 3way-valve and flow meter are read through optocouplers/isolators.
//  const int flowmeterPin = 2;
const int brewPin = 7;
const int fillerPin = 8;
const int clockInterval = 99;
int machineState = 1;
long clockStart = 0;
long currentClock = 0;
long previousClock = 0;
float showClock = 0;
long showFlowCount = 0;
long previousFlowCount = 0;
volatile long currentFlowCount = 0;

void flowTime()
{ 
  currentFlowCount = millis();
} 

void doIdling() {
  Serial.print(showClock);
  Serial.println(" - Idling");
  while (machineState == 1) {
    if (digitalRead(brewPin) == HIGH) {
      machineState = 2;
    } else if (digitalRead(fillerPin) == HIGH) {
      machineState = 3;
    }
  }
}

void doBrewing() {
  showClock = 0;
  Serial.print(showClock);
  Serial.println(" - Brewing");
  clockStart = millis();
  previousClock = clockStart;
  currentFlowCount = clockStart;
  previousFlowCount = clockStart;
  showFlowCount = 0;
  sei();
  while (digitalRead(brewPin) == HIGH) {
    if(currentFlowCount > previousFlowCount) {
      showFlowCount = currentFlowCount - previousFlowCount;
      previousFlowCount = currentFlowCount;
    }
    currentClock = millis();
    if(currentClock - previousClock > clockInterval) {
      previousClock = currentClock;   
      showClock = (currentClock - clockStart);
      showClock = showClock / 1000;
      Serial.print(showClock);
      Serial.print(" - Flowmeter: ");
      Serial.println(showFlowCount);
    }
  }
  cli();
  Serial.print(showClock);
  Serial.println(" - Brewing stopped");
  machineState = 1;
}

void doFilling() {
  Serial.print(showClock);
  Serial.println(" - Filling");
  while (digitalRead(fillerPin) == HIGH) {
    delay(5);
  }
  machineState = 1;
}

void setup() {
//  pinMode(flowmeterPin, INPUT);
  pinMode(brewPin, INPUT);
  pinMode(fillerPin, INPUT);
  attachInterrupt(0, flowTime, RISING);
  Serial.begin(9600);
  Serial.print(showClock);
  Serial.println(" - Setup");
}

void loop() {
  switch (machineState) {
  case 1:
    doIdling();
    break;
  case 2:
    doBrewing();
    break;
  case 3:
    doFilling();
    break;
  } 
}
Result:
0.00 - Setup
0.00 - Idling
0.00 - Brewing
0.10 - Flowmeter: 0
0.20 - Flowmeter: 146
0.30 - Flowmeter: 88
0.40 - Flowmeter: 94
0.50 - Flowmeter: 98
0.60 - Flowmeter: 92
0.70 - Flowmeter: 88
0.80 - Flowmeter: 96
0.90 - Flowmeter: 99
1.00 - Flowmeter: 92
1.10 - Flowmeter: 89
1.20 - Flowmeter: 85
1.30 - Flowmeter: 90
1.40 - Flowmeter: 91
1.50 - Flowmeter: 88
1.60 - Flowmeter: 91
1.70 - Flowmeter: 92
1.80 - Flowmeter: 93
1.90 - Flowmeter: 89
2.00 - Flowmeter: 87
2.10 - Flowmeter: 94
2.20 - Flowmeter: 85
2.30 - Flowmeter: 89
2.40 - Flowmeter: 87
2.40 - Brewing stopped
2.40 - Idling
0.00 - Brewing
0.10 - Flowmeter: 0
0.20 - Flowmeter: 188
0.30 - Flowmeter: 97
0.40 - Flowmeter: 94
0.50 - Flowmeter: 84
0.60 - Flowmeter: 83
0.70 - Flowmeter: 86
0.80 - Flowmeter: 87
0.90 - Flowmeter: 85
1.00 - Flowmeter: 85
1.10 - Flowmeter: 89
1.20 - Flowmeter: 87
1.30 - Flowmeter: 85
1.40 - Flowmeter: 91
1.50 - Flowmeter: 82
1.60 - Flowmeter: 86
1.70 - Flowmeter: 86
1.80 - Flowmeter: 86
1.90 - Flowmeter: 89
2.00 - Flowmeter: 93
2.10 - Flowmeter: 90
2.20 - Flowmeter: 94
2.30 - Flowmeter: 98
2.40 - Flowmeter: 95
2.50 - Flowmeter: 90
2.60 - Flowmeter: 87
2.70 - Flowmeter: 97
2.80 - Flowmeter: 93
2.90 - Flowmeter: 96
3.00 - Flowmeter: 90
3.10 - Flowmeter: 86
3.20 - Flowmeter: 94
3.30 - Flowmeter: 98
3.40 - Flowmeter: 93
3.50 - Flowmeter: 101
3.60 - Flowmeter: 99
3.70 - Flowmeter: 88
3.80 - Flowmeter: 101
3.90 - Flowmeter: 97
4.00 - Flowmeter: 106
4.10 - Flowmeter: 98
4.20 - Flowmeter: 97
4.30 - Flowmeter: 98
4.40 - Flowmeter: 97
4.50 - Flowmeter: 102
4.60 - Flowmeter: 99
4.70 - Flowmeter: 99
4.80 - Flowmeter: 98
4.90 - Flowmeter: 105
5.00 - Flowmeter: 105
5.10 - Flowmeter: 105
5.20 - Flowmeter: 108
5.30 - Flowmeter: 115
5.40 - Flowmeter: 124
5.50 - Flowmeter: 124
5.60 - Flowmeter: 134
5.70 - Flowmeter: 145
5.80 - Flowmeter: 145
5.90 - Flowmeter: 167
6.00 - Flowmeter: 167
6.10 - Flowmeter: 213
6.20 - Flowmeter: 213
6.30 - Flowmeter: 267
6.40 - Flowmeter: 267
6.50 - Flowmeter: 267
6.60 - Flowmeter: 267
6.70 - Flowmeter: 374
6.80 - Flowmeter: 374
6.90 - Flowmeter: 374
7.00 - Flowmeter: 374
7.10 - Flowmeter: 374
7.20 - Flowmeter: 525
7.30 - Flowmeter: 525
7.40 - Flowmeter: 525
7.50 - Flowmeter: 525
7.60 - Flowmeter: 525
7.70 - Flowmeter: 525
7.80 - Flowmeter: 525
7.90 - Flowmeter: 634
8.00 - Flowmeter: 634
8.10 - Flowmeter: 634
8.20 - Flowmeter: 634
8.30 - Flowmeter: 634
8.40 - Flowmeter: 634
8.50 - Flowmeter: 634
8.60 - Flowmeter: 684
8.70 - Flowmeter: 684
8.80 - Flowmeter: 684
8.90 - Flowmeter: 684
9.00 - Flowmeter: 684
9.10 - Flowmeter: 684
9.20 - Flowmeter: 684
9.30 - Flowmeter: 709
9.40 - Flowmeter: 709
9.50 - Flowmeter: 709
9.60 - Flowmeter: 709
9.70 - Flowmeter: 709
9.80 - Flowmeter: 709
9.90 - Flowmeter: 671
10.00 - Flowmeter: 671
10.10 - Flowmeter: 671
10.20 - Flowmeter: 671
10.30 - Flowmeter: 671
10.40 - Flowmeter: 671
10.50 - Flowmeter: 671
10.60 - Flowmeter: 646
10.70 - Flowmeter: 646
10.80 - Flowmeter: 646
10.90 - Flowmeter: 646
11.00 - Flowmeter: 646
11.10 - Flowmeter: 646
11.20 - Flowmeter: 603
11.30 - Flowmeter: 603
11.40 - Flowmeter: 603
11.50 - Flowmeter: 603
11.60 - Flowmeter: 603
11.70 - Flowmeter: 603
11.80 - Flowmeter: 569
11.90 - Flowmeter: 569
12.00 - Flowmeter: 569
12.10 - Flowmeter: 569
12.20 - Flowmeter: 569
12.30 - Flowmeter: 521
12.40 - Flowmeter: 521
12.50 - Flowmeter: 521
12.60 - Flowmeter: 521
12.70 - Flowmeter: 521
12.80 - Flowmeter: 484
12.90 - Flowmeter: 484
13.00 - Flowmeter: 484
13.10 - Flowmeter: 484
13.20 - Flowmeter: 478
13.30 - Flowmeter: 478
13.40 - Flowmeter: 478
13.50 - Flowmeter: 478
13.60 - Flowmeter: 478
13.70 - Flowmeter: 434
13.80 - Flowmeter: 434
13.90 - Flowmeter: 434
14.00 - Flowmeter: 434
14.10 - Flowmeter: 403
14.20 - Flowmeter: 403
14.30 - Flowmeter: 403
14.40 - Flowmeter: 403
14.50 - Flowmeter: 383
14.60 - Flowmeter: 383
14.70 - Flowmeter: 383
14.80 - Flowmeter: 369
14.90 - Flowmeter: 369
15.00 - Flowmeter: 369
15.10 - Flowmeter: 369
15.20 - Flowmeter: 351
15.30 - Flowmeter: 351
15.40 - Flowmeter: 351
15.50 - Flowmeter: 329
15.60 - Flowmeter: 329
15.70 - Flowmeter: 329
15.80 - Flowmeter: 329
15.90 - Flowmeter: 363
16.00 - Flowmeter: 363
16.10 - Flowmeter: 363
16.20 - Flowmeter: 326
16.30 - Flowmeter: 326
16.40 - Flowmeter: 326
16.50 - Flowmeter: 307
16.60 - Flowmeter: 307
16.70 - Flowmeter: 307
16.80 - Flowmeter: 303
16.90 - Flowmeter: 303
17.00 - Flowmeter: 303
17.10 - Flowmeter: 288
17.20 - Flowmeter: 288
17.30 - Flowmeter: 288
17.40 - Flowmeter: 278
17.50 - Flowmeter: 278
17.60 - Flowmeter: 278
17.70 - Flowmeter: 276
17.80 - Flowmeter: 276
17.90 - Flowmeter: 284
18.00 - Flowmeter: 284
18.10 - Flowmeter: 284
18.20 - Flowmeter: 263
18.30 - Flowmeter: 263
18.40 - Flowmeter: 263
18.50 - Flowmeter: 273
18.60 - Flowmeter: 273
18.70 - Flowmeter: 273
18.80 - Flowmeter: 277
18.90 - Flowmeter: 277
19.00 - Flowmeter: 287
19.10 - Flowmeter: 287
19.20 - Flowmeter: 287
19.30 - Flowmeter: 280
19.40 - Flowmeter: 280
19.50 - Flowmeter: 280
19.60 - Flowmeter: 277
19.70 - Flowmeter: 277
19.80 - Flowmeter: 277
19.90 - Flowmeter: 273
20.00 - Flowmeter: 273
20.10 - Flowmeter: 266
20.20 - Flowmeter: 266
20.30 - Flowmeter: 266
20.40 - Flowmeter: 281
20.50 - Flowmeter: 281
20.60 - Flowmeter: 281
20.70 - Flowmeter: 280
20.80 - Flowmeter: 280
20.90 - Flowmeter: 280
21.00 - Flowmeter: 278
21.10 - Flowmeter: 278
21.20 - Flowmeter: 268
21.30 - Flowmeter: 268
21.40 - Flowmeter: 268
21.50 - Flowmeter: 261
21.50 - Brewing stopped
21.50 - Idling
21.50 - Filling
21.50 - Idling
0.00 - Brewing
0.10 - Flowmeter: 0
0.20 - Flowmeter: 168
0.30 - Flowmeter: 88
0.40 - Flowmeter: 82
0.50 - Flowmeter: 88
0.60 - Flowmeter: 96
0.70 - Flowmeter: 89
0.80 - Flowmeter: 97
0.90 - Flowmeter: 93
1.00 - Flowmeter: 85
1.10 - Flowmeter: 88
1.20 - Flowmeter: 93
1.30 - Flowmeter: 89
1.40 - Flowmeter: 86
1.50 - Flowmeter: 87
1.60 - Flowmeter: 95
1.70 - Flowmeter: 85
1.80 - Flowmeter: 90
1.90 - Flowmeter: 97
2.00 - Flowmeter: 91
2.10 - Flowmeter: 95
2.20 - Flowmeter: 88
2.30 - Flowmeter: 96
2.40 - Flowmeter: 87
2.40 - Brewing stopped
2.40 - Idling
First I counted the number of clicks but It turned out that my standard (dosed) shot only were exactly 100 clicks!

With a 0.7 second gab between clicks this will not be good enough for controlling the brew process, I guess?

User avatar
Jacob
Posts: 367
Joined: 18 years ago

#236: Post by Jacob »

Drilling the bypass valve is going to be a challenge :?


User avatar
Carneiro
Posts: 1153
Joined: 15 years ago

#237: Post by Carneiro »

What is the bypass valve on the picture? I was wondering how this is implemented considering the small size of the pump.

User avatar
erics
Supporter ★
Posts: 6302
Joined: 19 years ago

#238: Post by erics »

Drilling the bypass valve is going to be a challenge
You should not need to. I enclosed a longer bypass in the package in order to get the pressure/flow characteristics.

Now please keep in mind that I am a little electrically challenged on the control aspects (I am receiving assistance from cafeIke) but that is why I am building a TEST bench prior to install in any particular machine.
Skål,

Eric S.
http://users.rcn.com/erics/
E-mail: erics at rcn dot com

User avatar
Jacob
Posts: 367
Joined: 18 years ago

#239: Post by Jacob »

erics wrote:You should not need to.
Sounds great! 8)
If that turns out to be true I'll only have one unknown left:
Keep, change, move or drop the build in 0.6mm flow restrictor?
erics wrote:Now please keep in mind that I am a little electrically challenged on the control aspects (I am receiving assistance from cafeIke) but that is why I am building a TEST bench prior to install in any particular machine.
Sounds like you are in god hands, but if I can help in any way please let me know.
Carneiro wrote:What is the bypass valve on the picture? I was wondering how this is implemented considering the small size of the pump.
If I'm not mistaken the bypass valve is located inside the pump. The adjustment bolt in the picture are then used to put more or less pressure on the spring which controls the bypass valve.

User avatar
shadowfax (original poster)
Posts: 3545
Joined: 19 years ago

#240: Post by shadowfax (original poster) »

Jacob wrote:If that turns out to be true I'll only have one unknown left:
Keeping, changing, moving or dropping the build in 0.6mm flow restrictor?
I can't speak for Eric, but when I talked to Scott from La Marzocco about the Strada EP, he told me that it uses the same 0.6mm ruby gicleur as the GS3 and others. I'm a little surprised by this, but I don't think it matters in the long run-if you get a Scace II to measure it, you can probably account for the pressure drop by displaying an offset pressure reading on your control device. I'm guessing that's what they do but I forgot to ask.
Nicholas Lundgaard