12. Évfolyam | Patonai Gergő

12. Évfolyam

Projektek

Adatbázis-kezelés

Relációs adatbázisok tervezése és kezelése SQL segítségével. Táblák, kapcsolatok, lekérdezések (SELECT, JOIN, GROUP BY), valamint tárolt eljárások és adatbázis-normalizálás elvei a gyakorlatban.

Access Dokumentáció

Programozás

Magasabb szintű programozási technikák alkalmazása: algoritmusok tervezése, adatszerkezetek kezelése, hibakeresés és összetett szoftveres problémák megoldása strukturált és objektumorientált szemlélettel.

PLC Programozás

Ipari programmable logic controller eszközök programozása létradiagram (LAD) és strukturált szöveg (ST) nyelven. Automatizálási feladatok megvalósítása, bemeneti/kimeneti jelek kezelése valós ipari szimulációkban.

Mikrovezérlők

Arduino és egyéb mikrovezérlő platformok programozása C/C++ nyelven. Szenzorok, aktuátorok és kijelzők vezérlése, kommunikációs protokollok (I2C, SPI, UART) alkalmazása beágyazott rendszerekben.

Arduino Dokumentáció

Hálózatkezelés Cisco

Cisco eszközök konfigurálása Packet Tracer szimulátorban és valós hardveren. VLANok, routolási protokollok (RIP, OSPF), hozzáférési listák (ACL) és hálózatbiztonság alapjainak gyakorlati elsajátítása.

← VISSZA A PROJEKTEKHEZ

Access Projekt – Dokumentáció

Adatbázis-struktúra

Csapat
HelyezésSzám
CsapatRövid szöveg
PontszamSzám
KiesesekszamaSzám
Osszkar_EuroRövid szöveg
pilotakVB
HelyezesSzám
NevRövid szöveg
CsapatRövid szöveg
PontszamSzám
FutamgyozelemSzám
KiesesekSzamaSzám
Versenyhetv
PályaRövid szöveg
NyertesRövid szöveg
Leggyorsabb körRövid szöveg
Piros ZászlóIgen/Nem
SCIgen/Nem
VscIgen/Nem
Kieső(k)Rövid szöveg

Lekérdezések

01

Legtöbb kiesés – pályánként

Melyik pályán volt a legtöbb kiesés a 2024-es szezonban.

SQL
SELECT TOP 1 Versenyhetv.Pálya, Max(Versenyhetv.[Kieső(k)]) AS [MaxOfKieső(k)] FROM Csapat, Versenyhetv GROUP BY Versenyhetv.Pálya ORDER BY Max(Versenyhetv.[Kieső(k)]) DESC;
02

Legtöbb futamgyőzelem

Melyik versenyzőnek volt a legtöbb futamgyőzelme, és hány kiesése volt a szezonban.

SQL
SELECT TOP 1 pilotakVB.Nev, pilotakVB.KiesesekSzama, pilotakVB.Futamgyozelem FROM pilotakVB ORDER BY pilotakVB.Futamgyozelem DESC;
03

Átlagos szezonbeli kárösszeg

Átlagosan mennyi volt az összes kár a szezonban.

SQL
SELECT TOP 1 Avg(Csapat.Osszkar_Euro) AS AvgOfOsszkar_Euro, seged1.Csapat FROM Csapat, seged1 GROUP BY seged1.Csapat;
04

Legalább 2-szer nyert pilóták

Kik azok a pilóták, akik legalább 2 alkalommal nyertek a szezonban.

SQL
SELECT Versenyhetv.Pálya, Versenyhetv.SC FROM Versenyhetv WHERE (((Versenyhetv.SC)=True));
05

Safety Car-ral rendelkező pályák

Melyik pályákon volt Safety Car a futamon a 2024-es szezonban.

SQL
SELECT Versenyhetv.Pálya, Versenyhetv.SC FROM Versenyhetv WHERE (((Versenyhetv.SC)=True));

Segédlekérdezés

A lekérdezés segít egy másik feladat megoldásában. Csökkenő sorrendben mutatja, hogyan alakul a csapatok törés általi kárja a szezonban.

Arduino Projekt – Dokumentáció

A Projektről

A projekt egy 1982–1986 között futott amerikai sorozat, a Knight Rider főszereplőjének autóját, KITTet ábrázolja. A 3D-s autómodellt a Thingiverse oldalon találtam, kisebb méretűre állítottam és az iskolai 3D nyomtatóval kinyomattam.

Az autó első lökhárítójába piros LED-eket fúrtam, melyek futófényként működnek. A LED-eket Arduino Unóra kötve, az ArduinoIDE-ben megírt programmal üzemeltetem.

Anyagkészlet

Alkatrészek
Arduino Uno1 db
Piros LED5 db – 15mm
Vezeték6 db
3D nyomtatott autó1 db – 80×26×20 mm
3D nyomtatott tartó1 db

Program Kód

setup()

Kimenetek beállítása

Itt állítjuk be a kimeneteket – melyik pin legyen aktív.

Arduino C++
void setup() { pinMode(2, OUTPUT); pinMode(4, OUTPUT); pinMode(7, OUTPUT); pinMode(8, OUTPUT); pinMode(12, OUTPUT); digitalWrite(2, LOW); digitalWrite(4, LOW); digitalWrite(7, LOW); digitalWrite(8, LOW); digitalWrite(12, LOW); }
loop()

Futófény logika

5 LED-et egymás után gyorsan villogtat – ~50 ms időzítéssel oda és vissza fut a fény.

Arduino C++
void loop() { // Előre digitalWrite(2, HIGH); delay(50); digitalWrite(2, LOW); digitalWrite(4, HIGH); delay(50); digitalWrite(4, LOW); digitalWrite(7, HIGH); delay(50); digitalWrite(7, LOW); digitalWrite(8, HIGH); delay(50); digitalWrite(8, LOW); digitalWrite(12, HIGH); delay(50); digitalWrite(12, LOW); // Vissza digitalWrite(8, HIGH); delay(50); digitalWrite(8, LOW); digitalWrite(7, HIGH); delay(50); digitalWrite(7, LOW); digitalWrite(4, HIGH); delay(50); digitalWrite(4, LOW); }

Önreflexió

A projekt építése során tapasztalatot szereztem a 3D nyomtatás és a 3D nyomtató használatáról, az Arduino használatáról és programozásáról.