Om oss

Denne siden omhandler bryggerlauget Svarstad Ølbryggerlaug, SØL for short. Her vil vi publisere litt info om bryggingen, bilder og video.

onsdag 10. desember 2014

Filtrering!

Egentlig kun for å teste filteret jeg kjøpte hos MoreBeer for en god stund siden, bestemte jeg meg for å filtrere Oktoberfest/Märzen som er brygget i anledning NM PF 2015. Ølet har gjæret i litt over 2 uker på 9 grader C, deretter en diacetylrast på 19 grader C og så 2,5 døgn på 0 grader. Ølet står nå til karbonering på 4 grader C og skal etter halvannen uke flyttes til lagring på 0 grader C.

Selve filtreringen gikk ganske bra, selv om det var noe utfordringer med luft helt i starten. Vet ikke om det er noe jeg kommer til å gjøre særlig ofte dog, da det spiser tid. Og noe øl. Men til konkurranser er det jo greit for å stack the deck når det kommer til klarhet.

Fotos:


søndag 9. november 2014

RB#19 American Stout og RB#20 American Lite Lager

Det drar seg mot jul igjen, og stoutfatet må fylles. I tillegg har jeg fra et par av mine lagerdrikkende kompiser fått et ønske om noe så kjedelig som et øl i nærheten av Bud Light(!!). Man etterstreber å etterkomme, dessuten var det en stil jeg ikke ennå har brygget. Dermed var det duket for helamerikansk bryggedag; American Stout og American Lite Lager.

Bestemte meg for å lage en 20 liter av lageren, og litt mindre av stouten. Årsak var at jeg ville meske begge i min nye meskeboks, og var usikker på om det var plass til å meske til 20 liter stout. Gikk for 15 liter, og med nesten 6 kg malt ble meskeboksen nesten full, men hadde ennå litt å gå på. Fikk også testet den nye temperatursensoren. Den funket sånn passe. Måler innimellom helt absurde verdier, og da må den resettes opptil flere ganger før den igjen viser riktig verdi. Nuvel, bedre enn å åpne lokket til enhver tid og vente til termometeret har stabilisert seg på rett verdi.

Når det gjelder tallenes tale ble OG på stout 1.065, 7 poeng lavere enn planlagt, men vel innenfor stilen så jeg er en happy camper. Lageren ble mesket noe høyt, så er spent på utgjæringen. OG på denne ble 1.045, altså noe for høyt.


Oppskrift American Lite Lager

Oppskrift American Stout
Lauter am. lager

Kjøling am. stout

Mesking am. stout



onsdag 5. november 2014

DIY: Enkel arduino temperatursensor med LCD

I anledning den nye meskeboksen må der også temperaturavlesning til. Fremfor å åpne/lukke boksen hver gang man vil sjekke mesketemperaturen, kan det være greit å ha en probe i selve mesken og kunne lese av temperaturen på utsiden av boksen. Enter Arduino + LCD shield + DS18B20.

Handleliste
1 stk Arduino (eller tilsvarende) - 41,20 kr
1 stk LCD shield - 24,44 kr
1 stk DS18B20 sensor (preferert vanntett utgave, ferdig kablet) - 11,44 kr
1 stk koblingsboks (art.nr. 32-6183) - 59 kr
Wagoklemmer
Kabler
Elektrikertape
Evt. strømforsyning - 26,91 kr


The wire-up
Klem på LCD-shieldet til Arduinoen, koble signal fra temperatursensoren til digital 3, jord til jord og power til 5V. Dernest en 4,7 kOhm motstand mellom signal og 5V. Voila! Jeg benyttet wagoklemmer til kobling av motstand for å gjøre det enkelt.
Koblingsskjema

The code

/*
The circuit:
 * LCD RS pin to digital pin 8
 * LCD Enable pin to digital pin 9
 * LCD D4 pin to digital pin 4
 * LCD D5 pin to digital pin 5
 * LCD D6 pin to digital pin 6
 * LCD D7 pin to digital pin 7
 * LCD R/W pin to ground
 */

#include <LiquidCrystal.h>
#include <OneWire.h>
#include <DallasTemperature.h>

LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
int lcd_key     = 0;
int brightness = 50;
int adc_key_in  = 0;
double temp;
double mintemp = 100;
double maxtemp;
double lasttemp;

String infotext = " Rogue Brewing  ";
#define btnRIGHT  0
#define btnUP     1
#define btnDOWN   2
#define btnLEFT   3
#define btnSELECT 4
#define btnNONE   5
#define ONE_WIRE_BUS 3                              // Data wire is plugged into digital pin 3 on the Arduino
#define NumberOfDevices 2                           // Set maximum number of devices in order to dimension array holding all Device Address arrays.

OneWire oneWire(ONE_WIRE_BUS);                      // Setup a oneWire instance to communicate with any OneWire devices
DallasTemperature sensors(&oneWire);                // Pass our oneWire reference to Dallas Temperature. 
byte allAddress [NumberOfDevices][8];               // Device Addresses are 8-element byte arrays. We need one for each of our DS18B20 sensors.
byte totalDevices;                                  // Declare variable to store number of One Wire devices that are actually discovered.

void setup() {
  lcd.begin(16,2);
  Serial.begin(9600);
  sensors.begin();
  analogWrite(10,brightness);

  totalDevices = discoverOneWireDevices();         // get addresses of our one wire devices into allAddress array 
  for (byte i=0; i < totalDevices; i++) {
    sensors.setResolution(allAddress[i], 10);      // and set the a to d conversion resolution of each.
  }
}

byte discoverOneWireDevices() {
  byte j=0;                                         // search for OneWire devices and copy to device address arrays.
      while ((j < NumberOfDevices) && (oneWire.search(allAddress[j]))) {        
    j++;
  }
  return j;                                         // return total number of devices found.
}

String printAddress(DeviceAddress addr) {
  byte i;
  String ad = "";
  for( i=0; i < 8; i++) {                         // prefix the printout with 0x
      if (addr[i] < 16) {
        ad = ad + "0";                            // add a leading '0' if required.
      }
      ad = ad + String(addr[i], HEX);             // print the actual value in HEX
      if (i < 7) {
      }
    }
    return ad;
}

double printTemperature(DeviceAddress addr) {
  float tempC = sensors.getTempC(addr);           // read the device at addr.
  if (tempC == -127.00 || tempC == 85.00) {
    double diff = tempC - lasttemp;
    if(diff > 2 || diff < -2)
    {
      return lasttemp;
    }
  }
  
  lasttemp = tempC;
  if(tempC != 0.00){
  if (tempC > maxtemp){
    maxtemp = tempC;
  }
  else if(tempC < mintemp){
    mintemp = tempC;
  }
  else{}
  }
  return tempC;                                 // and print its value.

}

void adjust_brightness(String mode)
{
  if(mode == "add")
  {
    if(brightness < 150)
    {
       brightness += 10;
       analogWrite(10,brightness);
       Serial.println("test");
    }
  }
  else
  {
    if(brightness > 0)
    {
       brightness -= 10;
       analogWrite(10,brightness);
    }
  }
}
int read_LCD_buttons()
{
  adc_key_in = analogRead(0);
  if (adc_key_in > 1000) return btnNONE;
  if (adc_key_in < 50)   return btnRIGHT;  
  if (adc_key_in < 250)  return btnUP; 
  if (adc_key_in < 450)  return btnDOWN; 
  if (adc_key_in < 650)  return btnLEFT; 
  if (adc_key_in < 850)  return btnSELECT;  

  return btnNONE;
}

void loop() {

  sensors.requestTemperatures();                // Initiate  temperature request to all devices
  for (byte i=0; i < totalDevices; i++) {
    if(printAddress(allAddress[i]) == "28b914fb0500003c") {
      temp = printTemperature(allAddress[i]);
    }
  }

  String tempstring = "Temp: " +String(temp) +" C  ";

  lcd.setCursor(0, 0);
  lcd.print(tempstring);

  lcd.setCursor(0,1);
  lcd.print(infotext);
  delay(50);

  lcd_key = read_LCD_buttons();

  switch (lcd_key)
  {
    case btnRIGHT:
    {
      lcd.setCursor(0,1);
      infotext = "MAX: " +String(maxtemp) +"      ";
      break;
    }
    case btnLEFT:
    {
      lcd.setCursor(0,1);
      infotext = "MIN: " +String(mintemp) +"      ";
      break;
    }
    case btnUP:
    {
      adjust_brightness("add");
      break;
    }
    case btnDOWN:
    {
      adjust_brightness("subtract");
      break;
    }
    case btnSELECT:
    {
      lcd.setCursor(0,1);
      infotext = " Rogue Brewing  ";
      break;
    }
    case btnNONE:
    {
      break;
    }
  }
 }

Kommentarer til koden:
- Knappene på LCD-shield gjør følgende:
  • SELECT: Nullstiller teksten på linje 2 i displayet
  • LEFT: Viser minste registrerte temperatur
  • RIGHT: Viser høyeste registrerte temperatur
  • UP/DOWN: Justerer brightness i displayet
  • RESET: Reset
- Av og til kommer syke temperaturavlesninger som f.eks. -127 og 85. Derfor er det lagt inn meget enkelt feilhåndtering som ikke registrerer slike feilregistreringer

The setup

Stripp koblingsboksen for alt unødvendig støpt plast og kutt til litt spor slik at Arduinoen fits like a glove. Skjær ut hull i lokket til LCD-skjerm og knapper. Før gjennom USB/strømkabel og sensor, og legg wagoklemmene fin nedi boksen. Sett på lokket. Eventuelt gå amok med elektrikertape og litt papp for å dekke til litt blemmer og andre åpninger i boksen ;)


Minste registrerte temperatur

Høyeste registrerte temperatur - høyeste lysstyrke

Høyste registrerte temperatur - laveste lysstyrke

Lokk ferdig utskjært. Sort of...

Let's tape this motha up!



Se så! Da var det bare å klaske på borrelåstape på baksida og klemme den fast på meskeboksen, evt en vegg i nærheten og slippe sensoren nedi mesken.

søndag 12. oktober 2014

SØL lanserer www.bryggekalkulator.no

Etter en lengre tids leting og bokmerking av forskjellige sider med bryggekalkulatorer og tips og triks, har jeg samlet ting og tang JEG ønsker å finne samlet på ett sted, på nettopp ett sted. Stedet er http://www.bryggekalkulator.no/

Håper denne kan være til nytte for nye og gamle hjemmebryggere i det ganske land. :)

/Glenn

fredag 10. oktober 2014

RB#17 Citra SMaSH IPA / RB#18 Kongsberg Pale Ale

Siden brygget i forrige uke var fyllt med utfordringer, bestemte jeg meg for å rebrygge dette ølet, nedskalert til 10 liters oppskrift. En perfekt anledning til å teste den nye meskeboksen! I tillegg, for å få noe mer ut av etterdagen, ble det også brygget en Citra SMaSH IPA. Oppskriften på sistnevnte ble som følger:

Ingredients
Amt Name Type # %/IBU
7,46 gCalcium Sulfate (CaSO4) (Mash 0,0 mins)Water Agent1-
1,87 gBaking Soda (Mash 60,0 mins)Water Agent2-
1,87 gCalcium Carbonate (CaCO3) (Mash 0,0 mins)Water Agent3-
6,00 kgPale Malt (8,0 EBC)Grain4100,0 %
35,00 gCitra [12,00 %] - Boil 60,0 minHop549,5 IBUs
15,00 gCitra [12,00 %] - Boil 0,0 minHop60,0 IBUs
4,94 gCalcium Sulfate (CaSO4) (Boil 0,0 mins)Water Agent7-
1,0 pkgCalifornia Ale (White Labs #WLP001) [35,49 ml]Yeast8-
40,00 gCitra [12,00 %] - Dry Hop 10,0 DaysHop90,0 IBUs


Jeg trodde utfordringen ville ligge i det at man brygget to batcher samtidig, men det viste seg å gå finfint. Startet innmesking med en god halvtimes mellomrom for å ha bedre kontroll. Dette fungerte veldig bra, helt til strømmen plutselig gikk, 50 minutter inn i kokingen av SMaSH-en. Tordenværet fra helvete var i gang, og håpet om to suksessfulle batcher svant hen da strømmen ikke kom tilbake med det første. Bestemte meg for å kjøre på med aromahumle og påfølgende nedkjøling av Citra SMaSH IPA'en, 10 minutter prematurt. APA'en hadde såvidt startet kok da strømmen gikk, så den avventet jeg med.

Etter en times tid kom strømmen tilbake, og jeg tok sjansen på nytt oppkok av APA'en. Nytt strømbrudd uteble, så jeg fikk avsluttet også dette ølet. 

Det som ikke gikk etter oppskriften var effektiviteten på bryggene. Endte med 12 liter Citra SMaSH IPA, og 7 liter APA. Årsaken til dette er nok dårlig tunet Beersmith-profil og nytt oppsett på bryggerutstyret. Traff dog øvrige tall ganske spot on, så jeg er en happy camper. :)







onsdag 8. oktober 2014

MLT for minibatch/pilotbatch

Etter tips fra Erlendso på Norbryggs forum (takk for inspirasjonen!), fant jeg ut at jeg ville lage en liten MLT for testbatcher. Man kan jo alltids lage en mindre batch med BB30, men jeg føler at jeg må justere varmen på denne for å holde mesketemperaturen, og synes også at jeg får til dels litt "meskesmak" på bryggene. I tillegg er det alltid artig å bygge noe nytt! :)

Handleliste:


Fram med baufil og kappe kobberrøret i passende lengder til en dugelig manifold, og så skjære spor i delene. Deretter bore hull til gjennomføringen. Kutte en liten bit kobberrør til å feste i unionen/klemringskoblingen, og så skru det hele sammen:



Gjennomføring innside av kjøleboks

En liten søt manifold ferdig montert

Underside manifold

Gjennomføring utside

Etter at det hele var skrudd sammen testet jeg med litt vann for å se at det ikke var lekkasje på gjennomføringen. Dessverre har denne boksen en liten kant på utsiden, slik at det ble ikke 100% tett, men vi snakker om en liten dråpe i ny og ne, så det skal jeg nok leve med. Når det kommer litt malt og seig vørter oppi etter hvert blir det nok enda mindre drypping. Uansett ikke noe volum som kommer til å påvirke meskingen.

Testet med litt varmt vann i 50 minutter og dette droppet fra 57 til 51 grader uten at kjøleboksen var forvarmet på noen måte. Med mer masse har jeg god tro på at denne holder mesketemperaturen i en time ganske greit.

I morgen blir jomfrutesten, da kjører jeg paralellbrygging; 20 liters Citra SMaSH IPA som meskes i boilermaker, og 10 liters APA som meskes i denne. :)

RB#16 - APA fra helvete

01.10.14 ble det forsøkt brygget en APA, oppskrift 20 liter. Planen var en Kongsberg Pale Ale klone til en liten klonekonkurranse i Kongsberg. Ingrediensene og parametre var låst, men mengdeforholdet på ingrediensene var justerbart. Oppskriften var på 20 liter, planlagt OG 1.050:

4.8 kg Pale Malt
0.1 kg Crystal 120
0.05 Crystal 275

16 g Colombus @ 60
10 g Simcoe @ 10
25 g Citra @ 1

Safale US-05

Tørrhumles med 20 g Citra og 20 g Cascade fra dag 6

Den nye kjelen ble brukt til å varme meskevann, alt så tilforlatelig ut. Så går sikringen... Av med en arbeidslampe på samme kurs (litt mørkt ute i uthuset på denne tiden av året), og på'n igjen. På ca 75 grader ble vann øverført meskekjele (Boilermaker 20 gallon), og innmesk startet.

Temperatursjekk: 51 grade C! WTF?!! For stor overflate, for liten masse, for kalde omgivelser (9-10 grader C). Fyre opp 7,5 liter vann til kok, helle i etter 20 minutter. Ny mesketemp: 67 grader C. Varme opp og skylle med 9 liter, overføre til kokekjele.

Preboil OG: 1.031. Volum: 29 liter. Helvete! Satan!!! Her er det bare å koke en god stund så både volum og OG ved bitterhumletilsetning blir riktig. Etter 1 timer og 20 minutter ble bitterhumle tilsatt, og resten av kokingen gikk som planlagt etter forholdene...

12,5 liter etter kjøling, OG 1.054, total koketid nesten 2,5 time... Det blir nok ikke noe å sende inn til konkurranse, men får nå gi den en sjanse når man har brukt så mye energi på så lite :)

Lukter fortreffelig i det minste, tørrhumlet i dag.

Dette blir en rebrygging i morgen, da blir det også en Citra SMaSH IPA.