Add NVIS antenna equipment page.
BIN
public/images/radio/antenna/nvis/antenna-nvis-w240.webp
Normal file
|
After Width: | Height: | Size: 60 KiB |
BIN
public/images/radio/antenna/nvis/antenna-nvis-w480.webp
Normal file
|
After Width: | Height: | Size: 205 KiB |
BIN
public/images/radio/antenna/nvis/antenna-nvis-w800.webp
Normal file
|
After Width: | Height: | Size: 459 KiB |
BIN
public/images/radio/antenna/nvis/coax-connector-w240.webp
Normal file
|
After Width: | Height: | Size: 50 KiB |
BIN
public/images/radio/antenna/nvis/coax-connector-w480.webp
Normal file
|
After Width: | Height: | Size: 167 KiB |
BIN
public/images/radio/antenna/nvis/coax-connector-w800.webp
Normal file
|
After Width: | Height: | Size: 404 KiB |
BIN
public/images/radio/antenna/nvis/coils-w240.webp
Normal file
|
After Width: | Height: | Size: 59 KiB |
BIN
public/images/radio/antenna/nvis/coils-w480.webp
Normal file
|
After Width: | Height: | Size: 228 KiB |
BIN
public/images/radio/antenna/nvis/coils-w800.webp
Normal file
|
After Width: | Height: | Size: 607 KiB |
BIN
public/images/radio/antenna/nvis/covering-w240.webp
Normal file
|
After Width: | Height: | Size: 58 KiB |
BIN
public/images/radio/antenna/nvis/covering-w480.webp
Normal file
|
After Width: | Height: | Size: 195 KiB |
BIN
public/images/radio/antenna/nvis/covering-w800.webp
Normal file
|
After Width: | Height: | Size: 498 KiB |
BIN
public/images/radio/antenna/nvis/eznec-10m-28mhz-side-w240.webp
Normal file
|
After Width: | Height: | Size: 45 KiB |
BIN
public/images/radio/antenna/nvis/eznec-10m-28mhz-side-w480.webp
Normal file
|
After Width: | Height: | Size: 157 KiB |
BIN
public/images/radio/antenna/nvis/eznec-10m-28mhz-side-w800.webp
Normal file
|
After Width: | Height: | Size: 384 KiB |
BIN
public/images/radio/antenna/nvis/eznec-10m-28mhz-top-w240.webp
Normal file
|
After Width: | Height: | Size: 71 KiB |
BIN
public/images/radio/antenna/nvis/eznec-10m-28mhz-top-w480.webp
Normal file
|
After Width: | Height: | Size: 251 KiB |
BIN
public/images/radio/antenna/nvis/eznec-10m-28mhz-top-w800.webp
Normal file
|
After Width: | Height: | Size: 605 KiB |
BIN
public/images/radio/antenna/nvis/eznec-17m-18mhz-w240.webp
Normal file
|
After Width: | Height: | Size: 42 KiB |
BIN
public/images/radio/antenna/nvis/eznec-17m-18mhz-w480.webp
Normal file
|
After Width: | Height: | Size: 148 KiB |
BIN
public/images/radio/antenna/nvis/eznec-17m-18mhz-w800.webp
Normal file
|
After Width: | Height: | Size: 281 KiB |
BIN
public/images/radio/antenna/nvis/eznec-20m-14mhz-w240.webp
Normal file
|
After Width: | Height: | Size: 53 KiB |
BIN
public/images/radio/antenna/nvis/eznec-20m-14mhz-w480.webp
Normal file
|
After Width: | Height: | Size: 174 KiB |
BIN
public/images/radio/antenna/nvis/eznec-20m-14mhz-w800.webp
Normal file
|
After Width: | Height: | Size: 402 KiB |
BIN
public/images/radio/antenna/nvis/eznec-40m-7mhz-w240.webp
Normal file
|
After Width: | Height: | Size: 37 KiB |
BIN
public/images/radio/antenna/nvis/eznec-40m-7mhz-w480.webp
Normal file
|
After Width: | Height: | Size: 131 KiB |
BIN
public/images/radio/antenna/nvis/eznec-40m-7mhz-w800.webp
Normal file
|
After Width: | Height: | Size: 266 KiB |
BIN
public/images/radio/antenna/nvis/eznec-80m-3.5mhz-w240.webp
Normal file
|
After Width: | Height: | Size: 45 KiB |
BIN
public/images/radio/antenna/nvis/eznec-80m-3.5mhz-w480.webp
Normal file
|
After Width: | Height: | Size: 146 KiB |
BIN
public/images/radio/antenna/nvis/eznec-80m-3.5mhz-w800.webp
Normal file
|
After Width: | Height: | Size: 333 KiB |
BIN
public/images/radio/antenna/nvis/nvis-pcb-2-w240.webp
Normal file
|
After Width: | Height: | Size: 64 KiB |
BIN
public/images/radio/antenna/nvis/nvis-pcb-2-w480.webp
Normal file
|
After Width: | Height: | Size: 203 KiB |
BIN
public/images/radio/antenna/nvis/nvis-pcb-2-w800.webp
Normal file
|
After Width: | Height: | Size: 484 KiB |
BIN
public/images/radio/antenna/nvis/nvis-pcb-scrape-w240.webp
Normal file
|
After Width: | Height: | Size: 65 KiB |
BIN
public/images/radio/antenna/nvis/nvis-pcb-scrape-w480.webp
Normal file
|
After Width: | Height: | Size: 227 KiB |
BIN
public/images/radio/antenna/nvis/nvis-pcb-scrape-w800.webp
Normal file
|
After Width: | Height: | Size: 571 KiB |
BIN
public/images/radio/antenna/nvis/nvis-pcb-w240.webp
Normal file
|
After Width: | Height: | Size: 63 KiB |
BIN
public/images/radio/antenna/nvis/nvis-pcb-w480.webp
Normal file
|
After Width: | Height: | Size: 222 KiB |
BIN
public/images/radio/antenna/nvis/nvis-pcb-w800.webp
Normal file
|
After Width: | Height: | Size: 563 KiB |
BIN
public/images/radio/antenna/nvis/nvis-setup-diagram-w240.webp
Normal file
|
After Width: | Height: | Size: 42 KiB |
BIN
public/images/radio/antenna/nvis/nvis-setup-diagram-w480.webp
Normal file
|
After Width: | Height: | Size: 160 KiB |
BIN
public/images/radio/antenna/nvis/nvis-setup-diagram-w800.webp
Normal file
|
After Width: | Height: | Size: 419 KiB |
24
src/App.js
@ -38,6 +38,7 @@ import Footer from './UI/Footer';
|
|||||||
import BasicPage from './Pages/BasicPage';
|
import BasicPage from './Pages/BasicPage';
|
||||||
import Japan from './Pages/Japan/Japan';
|
import Japan from './Pages/Japan/Japan';
|
||||||
import JapaneseMain from './Pages/Japan/JapaneseMain';
|
import JapaneseMain from './Pages/Japan/JapaneseMain';
|
||||||
|
import EquipmentPage from './Pages/Radio/equipmentPage';
|
||||||
|
|
||||||
const languages = ['en', 'nl'];
|
const languages = ['en', 'nl'];
|
||||||
|
|
||||||
@ -74,6 +75,8 @@ const languageStrings = {
|
|||||||
portal: 'Portal',
|
portal: 'Portal',
|
||||||
language: 'Language',
|
language: 'Language',
|
||||||
// Radio
|
// Radio
|
||||||
|
nvisAntenna: 'NVIS Antenna',
|
||||||
|
equipment: 'Equipment',
|
||||||
fielddays: 'Field days',
|
fielddays: 'Field days',
|
||||||
// Footer
|
// Footer
|
||||||
footer_madewith: 'This site was made with',
|
footer_madewith: 'This site was made with',
|
||||||
@ -94,6 +97,8 @@ const languageStrings = {
|
|||||||
portal: 'Portaal',
|
portal: 'Portaal',
|
||||||
language: 'Taal',
|
language: 'Taal',
|
||||||
// Radio
|
// Radio
|
||||||
|
nvisAntenna: 'NVIS Antenne',
|
||||||
|
equipment: 'Apparatuur',
|
||||||
fielddays: 'Velddagen',
|
fielddays: 'Velddagen',
|
||||||
// Footer
|
// Footer
|
||||||
footer_madewith: 'Deze website is gemaakt met',
|
footer_madewith: 'Deze website is gemaakt met',
|
||||||
@ -108,7 +113,6 @@ export function getString(key) {
|
|||||||
|
|
||||||
function App() {
|
function App() {
|
||||||
const language = getLanguage();
|
const language = getLanguage();
|
||||||
const dates = ['20231111', '20231230', '20240121'];
|
|
||||||
|
|
||||||
const paths = {
|
const paths = {
|
||||||
'japan': <JapaneseMain />,
|
'japan': <JapaneseMain />,
|
||||||
@ -118,6 +122,7 @@ function App() {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const fieldDaysRoutes = languages.map(lang => {
|
const fieldDaysRoutes = languages.map(lang => {
|
||||||
|
const dates = ['20231111', '20231230', '20240121'];
|
||||||
return dates.map(date => {
|
return dates.map(date => {
|
||||||
const path = `/${lang}/radio/fielddays/${date}`;
|
const path = `/${lang}/radio/fielddays/${date}`;
|
||||||
const mdPath = `Radio/fielddays/${lang}/${date}.md`;
|
const mdPath = `Radio/fielddays/${lang}/${date}.md`;
|
||||||
@ -125,6 +130,22 @@ function App() {
|
|||||||
});
|
});
|
||||||
}).flat();
|
}).flat();
|
||||||
|
|
||||||
|
const equipmentRoutes = languages.map(lang => {
|
||||||
|
const equipments = [
|
||||||
|
{
|
||||||
|
title: 'nvis',
|
||||||
|
category: 'antenna',
|
||||||
|
filename: 'nvis'
|
||||||
|
}
|
||||||
|
];
|
||||||
|
return equipments.map(equipment => {
|
||||||
|
const path = `/${lang}/radio/equipment/${equipment.category}/${equipment.title}`;
|
||||||
|
console.log(path);
|
||||||
|
const mdPath = `Radio/${lang}/equipment/${equipment.category}/${equipment.filename}.md`;
|
||||||
|
return <Route key={`${lang}-${equipment.title}`} exact path={path} element={<EquipmentPage mdPath={mdPath} />} />;
|
||||||
|
});
|
||||||
|
}).flat();
|
||||||
|
|
||||||
function generateRoutes(languages, paths) {
|
function generateRoutes(languages, paths) {
|
||||||
const routes = [];
|
const routes = [];
|
||||||
|
|
||||||
@ -151,6 +172,7 @@ function App() {
|
|||||||
<Route exact path='/nl' element={<Home language={language} />}></Route>
|
<Route exact path='/nl' element={<Home language={language} />}></Route>
|
||||||
|
|
||||||
{fieldDaysRoutes}
|
{fieldDaysRoutes}
|
||||||
|
{equipmentRoutes}
|
||||||
{generatedRoutes}
|
{generatedRoutes}
|
||||||
|
|
||||||
<Route exact path='/software/dxp-development' element={<DXPDevelopment />}></Route>
|
<Route exact path='/software/dxp-development' element={<DXPDevelopment />}></Route>
|
||||||
|
|||||||
@ -1,5 +1,6 @@
|
|||||||
import React from 'react';
|
import React from 'react';
|
||||||
import Emoji from '../../Content/Emoji';
|
import Emoji from '../../Content/Emoji';
|
||||||
|
import { Link } from 'react-router-dom';
|
||||||
import MarkdownPage from '../markdownPage';
|
import MarkdownPage from '../markdownPage';
|
||||||
import { getLanguage, getString } from '../../App';
|
import { getLanguage, getString } from '../../App';
|
||||||
import FielddaysTable from './fielddays/fielddaysTable';
|
import FielddaysTable from './fielddays/fielddaysTable';
|
||||||
@ -12,6 +13,11 @@ const RadioMain = () => {
|
|||||||
<h1 id="list-intro" className="text-primary">Radio amateur <Emoji symbol="📻" /></h1>
|
<h1 id="list-intro" className="text-primary">Radio amateur <Emoji symbol="📻" /></h1>
|
||||||
<MarkdownPage md={'Radio/' + language + '/main.md'} />
|
<MarkdownPage md={'Radio/' + language + '/main.md'} />
|
||||||
|
|
||||||
|
<h2>{getString('equipment')}</h2>
|
||||||
|
<ul>
|
||||||
|
<li><Link reloadDocument to={'/' + language + '/radio/equipment/antenna/nvis'}>{getString('nvisAntenna')}</Link></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
<h2>{getString('fielddays')}</h2>
|
<h2>{getString('fielddays')}</h2>
|
||||||
<FielddaysTable />
|
<FielddaysTable />
|
||||||
|
|
||||||
|
|||||||
42
src/Pages/Radio/en/equipment/antenna/nvis.md
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
NVIS antenna
|
||||||
|
============
|
||||||
|
|
||||||
|
This [Near vertical incidence skywave antenna](https://en.wikipedia.org/wiki/Near_vertical_incidence_skywave) was made for me by PA0ABG.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
A [FR-4 PCB](https://en.wikipedia.org/wiki/FR-4) is used. Half of it was scraped off for this design.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
The antenne wires, coiled on a piece of pipe.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Diagrams
|
||||||
|
|
||||||
|
Some 3d plots of this antenna on 10, 17, 20, 40 and 80 meters made with EZNEC software by PA0ABG. The antenna is most effective on 20, 40 and 80 meters, where the waves go upwards.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
The antenna deployed in the field.
|
||||||
|
|
||||||
|

|
||||||
16
src/Pages/Radio/equipmentPage.js
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
import React from 'react';
|
||||||
|
import Breadcrumbs from '../../UI/Breadcrumbs'
|
||||||
|
import MarkdownPage from '../markdownPage'
|
||||||
|
|
||||||
|
const EquipmentPage = ({ mdPath }) => {
|
||||||
|
return (
|
||||||
|
<article className='main-page'>
|
||||||
|
<Breadcrumbs separator=' > ' path="radio">
|
||||||
|
{['radio']}
|
||||||
|
</Breadcrumbs>
|
||||||
|
<MarkdownPage md={mdPath} />
|
||||||
|
</article>
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
export default EquipmentPage;
|
||||||
42
src/Pages/Radio/nl/equipment/antenna/nvis.md
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
NVIS antenne
|
||||||
|
============
|
||||||
|
|
||||||
|
Deze [Near vertical incidence skywave antenne](https://en.wikipedia.org/wiki/Near_vertical_incidence_skywave) was voor me gemaakt door PA0ABG.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Een [FR-4 PCB](https://en.wikipedia.org/wiki/FR-4) was gebruikt. De helft is er af geschraapt voor het design.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
The antenne wires, coiled on a piece of pipe.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Diagrammen
|
||||||
|
|
||||||
|
Enkele 3d plotten van deze antenne op 10, 17, 20, 40 en 80 meter gemaakt met EZNEC software door PA0ABG. De antenne is het meest effectief op 20, 40 en 80 meter, waar de radiogolven naar boven gericht zijn.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
De antenne opgesteld in het veld.
|
||||||
|
|
||||||
|

|
||||||