Witaj na mojej stronie! Dział: Blog
Zaloguj Kontakt Strona główna

Początki

python nie taki straszny

Szukając jakiegoś ciekawego języka do poznania padło na python'a. Dotychczas odrzucała mnie myśl, że wcięcia w kodzie mają znaczenie i omijałem ten język z daleka, ale po bliższym zapoznaniu nie jest to takie straszne.

Stojąc przy woborze wersji wybrałem 3+ chociaż większość tutoriali jest do wersji 2 to nie warto zostawać w tyle i trzeba uczyć się wersji nowszej. Co mi się spodobało w tym języku to fakt, że jest dużo bardziej userfriendly niż znane mi inne języki skryptowe (podobno Ruby jest bardzo podobny do pythona, ale za niego jakoś nie mogłem się nigdy zabrać). 

Odnośnie wydajności to szału nie ma, ale ilość dostępnych bibliotek rekompensuje to w pewnym stopniu. Język to w większości listy i im pochodne, całkiem fajnie się na tym operuje i nie sprawia to większych problemów. Jak przy nauce każdego języka na pierwszy ogień poleciały klasyczne algorytmy takie jak NWD, ciąg Fibonacciego, sortowania i jestem pod ogromnym wrażeniem prostoty pisania w tym języku. Niewątpliwą zaletą jest interpreter ipython3 który pozwa na szybko przetestować to co zamierzamy zrobić.

 

  • Autor: Łukasz Buryło

czujnik ciśnienia

budujemy własny barometr

Na rynku jest sporo układów do pomiaru ciśnienia i różnych granicach cenowych. Mi nie chodziło o super dokładność w pomiarach bo do niczego nie jest mi to potrzebne jedynie o trend zmian. Posiłkując się różnymi artykułami znalazłem czujnik ciśnienia BMP085 który na ebay'u kosztuje ok 1$ łącznie z przesyłka z Chin więc można powiedzieć, że jego koszt jest znikomy.

 

Układ zasilany jest napięciem 3.3V ale wersja która ja na byłem (ta na zdjęciu powyżej) akceptuje też podanie zasilania 5V. Ciekwym rozwiązaniem jest to, że komunikacja przebiega za pomocą dwóch pinów SDA i SCL, na których może być umieszczonych więcej urządzeń. W celu lepszego zrozumienia polecam poczytać o magistrali I2C.

Co ciekawe, układ bmp085 potrafi mierzyć również temperaturę, co pozwoli w niektórych punktach pomiarowych zrezygnować dedykowanego czujnika na rzecz bmp085 kosztem dokładności pomiaru.

 

  • Autor: Łukasz Buryło

czujnik temperatury

czym mierzyć

Tu mój wybór był oczywisty bo czujniki miałem z poprzedniego projektu czyli DS18b20. Bibliotek na platformę arduino jest sporo więc nie było z nimi problemów. Jedynym minusem jest czas odczytu (750ms) no ale jakoś to da się przeboleć.

  • Autor: Łukasz Buryło

Założenia

czyli jak, po co, na co, za ile i dlaczego tak drogo

Projekt jest ewaluacją stacji meteo opartej o 1-wire która miała jedną wadę - nie była łatwo skalowalna i rozbudowa o nowe czujniki była problematyczna.

 

Założenia:

- pomiar ciśnienia atmosferycznego

- pomiar temperatury

- pomiar wilgotności

- łączność bezprzewodowa z czunikiem

- wysyłanie danych na serwer za pomocą ethernetu

- prosta możliwość rozbudowy o dodatkowe czujniki

- prosta możliwość rozbudowy o dodatkowe punkty pomiarowe

- budżet który nie zrujnuje kieszeni

 

Jak sobie to wypisałem na kartce to ciężko było uwierzyć, że da się to zrealizować. Poszperałem trochę na ebay-u i okazało się, że czujniki są w miarę tanie. Wszystko fajnie ale do czegoś trzeba to podłączyć i tym sposobem znalazłem platformę Arduino. Poczytałem trochę i zobaczyłem, że społeczność jest spora i ludzie bardzo chętni do pomocy.

Arduino przyszło ze sklepu nettigo.pl i po pierwszych zabawach z mruganiem diodą zacząłem zagłębiać się w temat mojej domowej stacji meteo.

 

  • Autor: Łukasz Buryło

Podziałało wszystko jakiś czas, ale idea kabli się znudziła i zacząłem szukać czegoś nowego. Rozwiązania w dziale arduino ;-)

  • Autor: Łukasz Buryło

Wprowadzenie

co, jak i po co

Pare lat temu widziałem cyfrowy pomiar temperatury u jednego z moich kolegów, ale w tamtym czasie nie miałem potrzeby zrobienia czegoś takiego u siebie. Podczas remontu pomysł pojawił się ponownie i zacząłem interesować się tym tematem trochę bardziej. Docelowo mam zamiar posiadac po jednym czujniku temperatury w każdym pomieszczeniu mieszkania, po jednym czujniku temperatury po każdej stronie budynku, czujnik wilgotności w łazience oraz na dworzu oraz czujnik ciśnienia na balkonie. Cały projekt wykonuję z odzyskanych gdzieś skrętek komputerowych.

Sumując co jest potrzebne do wykonania:

6 x czujnik temperatury DS18B20

2 x czujnik wilgotności (w trakcie wyboru)

1 x czujnik ciśnienia (w trakcie wyboru)

1 x adapter 1-wire DS9097

1 x przejściówka USB -> RS232

 

Niektórzy pytaja 'po co Ci to', odpowiadam że z powodu czystej zabawy i poczucia, że zrobiło się coś fajnego co działa i jest w jakimś stopniu przydatne, a ponieważ koszt wykonania czegoś takiego jest śmiesznie niski to czemu by się nie pobawić.

Całość jest spięta na routerze TP-LINK MR3420 (tani, z USB, z dużymi możliwościami), docelowo któryś z tabletów będzie stał stacjonarnie jako domowa stacja meteo.

W kolejnych wpisach dokładnie opiszę proces budowy mojej stacji meteo.

 

  • Autor: Łukasz Buryło

ekg i polskie znaczki

krzaczek krzaczkiem pogania

Rozwiązanie na krzaczki podczas działania ekg w screenie. Prosty skrypt w bash'u który zmieni nam kodowanie z UTF-8 na ISO-8859-2

 

#!/bin/bash
export LC_ALL=pl_PL.iso-8859-2
screen -dmS gadu /usr/bin/ekg
export LC_ALL=pl_PL.UTF-8
sleep 3
screen -r

 

Wynalezione gdzieś w internecie, skrypt nie mojego autorstwa

  • Autor: Łukasz Buryło

Obsługa funkcji daty w Symfony2 (2.2),

czyli coś, czego brakuje

Pisząc dodatek bloga do biegania, chciałem żeby można było wyświetlić dodatkowo aktywności tylko np. z danego miesiąca lub konkretnego roku. Domyślnie Doctrine2 nie obsługuje funkcji takich jak YEAR(), MONTH(), DAY().

Po małym grzebaniu w sieci znalazłem wreszcie rozwiązanie, które mnie zadowala. Wymaga ono doinstalowania DoctrineExtensions do naszego projektu.

Poniżej wymagane zmiany.
Czytaj dalej ...

  • Autor: Łukasz Buryło

FOSUserBundle i FOSFacebookBundle

(nowość) dla wersji Symfony2 (2.2)

Od dłuższego czasu w swoich projektach używam połączenia FOSUserBundle oraz FOSFacebookBundle, a ponieważ konfiguracja i zmuszenie do działania tych dwóch pakietów początkującym sprawia odrobinę trudności, to poniżej zamieszczam moją (w 100% działającą) konfiguracje.
Czytaj dalej ...

  • Autor: Łukasz Buryło

KeePass, czyli hasła i klucze w jednym miejscu

opis możliwości i użyteczności KeePassa

Od dłuższego czasu szukałem jakiegoś sprawnego rozwiązania do kompleksowej obsługi haseł. Po przetestowaniu kilku dostępnych rozwiązań wybór padł na KeePass'a. Okazał się najbardziej dojrzałym i w wystarczającym stopniu spełnia moje wymagania.
Czytaj dalej ...

  • Autor: Łukasz Buryło

Wolny czas sprzyja tworzeniu czegoś z ciekawości. Udostępniam swój katalog stron, jest on moderowany i darmowy dzięki czemu nie ma zabawy w smskody, multikody itp. Może jak katalog nabierze trochę contentu to pojawią sie jakieś multikody ale póki co zostaje on darmowy. Zapraszam do dodawnia swoich stron pod adresem http://nseo-katalog.pl

  • Autor: Łukasz Buryło

FOSUserBundle i FOSFacebookBundle

dla wersji Symfony2 (2.0)

Moja przykładowa konfiguracja aby zmusić te dwie paczki do współpracy.

# deps
[FOSUserBundle]
  git=git://github.com/FriendsOfSymfony/FOSUserBundle.git
  target=bundles/FOS/UserBundle

[FOSFacebookBundle]
  git=git://github.com/FriendsOfSymfony/FOSFacebookBundle.git
  target=/bundles/FOS/FacebookBundle
  version=origin/2.0

[FacebookSDK]
  git=git://github.com/facebook/facebook-php-sdk.git
  target=/facebook


Czytaj dalej ...

  • Autor: Łukasz Buryło

openSSL - zapiski

pare przydatnych rzeczy które warto mieć pod reką

sprawdzenie informacji o certyfikacie (m.in data ważności)

openssl x509 -text -noout -in usercert.pem

generowanie klucza

openssl genrsa -des3 -out userkey.pem

zdejmowanie hasła z klucza (tylko w szczególnych przypadkach)

openssl rsa -in userkey.pem -out userkey_nopass.pem

wygenerowanie żądania certyfikatu

openssl req -new -key userkey.pem -out userreq.pem

podpisanie żądania certykiatu przez CA (na jeden rok)

openssl ca -notext -in userreq.pem -out usercert.pem -days 365

  • Autor: Łukasz Buryło

BASH – Multi Line comments

komentarze wielolinijkowe w bash'u

Prosty sposób na uzyskanie komentarzy wielolinijkowych w bash'u. Powszechnie używanym i opisywanym sposobem komentowania jest komentarz jedno liniowy, tj.

#!/bin/bash
echo "one"
#echo "two"
echo "three"

Rezultat:

one
three

Nastęcza to wielu problemów jeśli chcemy zakomentować duży blok instrukcji. Prostym obejściem jest stosowanie komentarzy w postaci:

#!/bin/bash
echo "one"
<<KOMENTARZ
echo "two"
echo "three"
KOMENTARZ
echo "four"


Rezultat:

one
four
  • Autor: Łukasz Buryło

pageant - czyli logowanie na konta bez hasła

jak w sprawny sposób połączyć się przez ssh bez używania hasła

Wielu z użytkowników internetu korzysta z kont shellowych. Najczęściej wykorzystywanym klientem jest Putty, który w większości wypadków jest wystarczający. Ze względów bezpieczeństwa powinno się stosować różne hasła do różnych kont co uniemożliwia osobie niepowolanej dostęp do wszystkich naszych serwerów podsłuchując jedno hasło. Sposobu na bezpieczne hasło właściwie nie ma, można co najwyżej zrobić sobie kombinacje z różnych znaków nie tworzącą żadnego logicznego ciągu, np. tU7$a.5#eB. Takie hasło dla każdego z nas może być trudne do zapamiętania. Aby uprościć proces logowania i zaoszczędzić parę szarych komórek stworzono program Pageant. Umożliwia on logowanie się do konta shellowego przy użyciu kluczy. Poniżej przedstawiam szybką konfiguracje i umożliwienie logowania z wykorzystaniem klucza:
Czytaj dalej ...

  • Autor: Łukasz Buryło