Commit Graph
9 Commits
Author SHA1 Message Date
grabowski 7af5d89dd0 Steam and cooling plant for the five-press fleet; utilities re-based
Deploy test site / deploy (push) Successful in 44s
New page docs/steam-cooling.html (site /demos/steam-cooling/): the
utility plant as a clickable process diagram. Steam side: raw water,
softener and dosing, feed tank with heat-pump feedwater recovery, feed
pumps, a bank of two 500 kg/h boilers (third for N+1 as an option),
separator and metering, optional accumulator, blowdown, the 10 bar
header with a valved, metered branch and trap per press, drip legs and
condensate return. Cooling side: Newbilt's press outlets are open (max.
2 bar), so returns drain to a warm tank, pass the heat pump, an optional
dry cooler and a plate heat exchanger to a cold buffer tank, and VFD
pumps feed the 20 to 25 C header at ~10 bar to every press, the
extruders and the central hydraulic oil cooler; the chiller loop
(three 250 kW air-cooled modules at 40 C ambient, fourth as option) stays
closed and clean. Galvanics cooling (12 to 20 C) is a separate circuit.
Operating cases (launch, Duplex system 1, five presses, one module down)
show demand against installed capacity; design basis with sources,
equipment schedule, RFQ questions. Static SVG, no per-frame work.

Design basis at Newbilt's per-machine figures: steam 750 to 900 kg/h,
cooling 652.5 kW (625 presses, 15 extruders, 12.5 hydraulics), 305 to
540 l/min circulating. Also found: Newbilt's 53 l/min at ~60 C out is
~140 kW, above its 125 kW peak; listed as a re-quote question.

Re-based in the same commit:
- scale.md: electrical table (chiller bank ~210 to 325 kW electrical,
  plant peak ~430 to 700 kW, ~950 to 1,330 kW with electric steam),
  grid 800 to 1,000 kVA (1,250 to 1,600 with electric steam, Schedule
  4 past 1,000 kW), tariff 4.5M to 6.8M THB/yr, battery ~1 h of chiller
  peak, boiler and chiller banks, biomass up to ~550 t/yr at 1.5 M
  records, utilities money line.
- sustainability.md, biomass.md: same figures; electric steam 5.2M to
  6.0M THB/yr mature, 1.6M to 1.8M early; fuel saving 4.0M to 5.4M.
- utilities CSV: boiler bank, chiller bank with HX and tanks, softener
  and loop treatment re-sized; baseline 23.98M-41.63M -> 30.07M-51.33M.
- total-investment.md: re-size as an added-scope row (+185k / +294k
  USD); headline 4.7M to 8.9M unchanged until the investment re-base.
- pressing-line, equipment-suppliers, facility-security, fleet
  calculator (boiler 1000 kg/h, chiller 750 kW), plant page detail
  texts; README, landing page, build.sh.
2026-10-14 09:58:27 +07:00
grabowski 53f3a07a45 Unified Engelbert Strauss workwear for all staff
Deploy test site / deploy (push) Successful in 43s
User, October 2026: we want unified Engelbert Strauss work clothes.

- worker-safety.md: decision recorded; everyone, office included, in the
  same Strauss workwear with the company logo, process PPE on top. Kit at
  Strauss catalogue prices checked October 2026 (incl. 19 % German VAT,
  which drops out on export): production 3 trousers e.s.motion 2020, 3
  polo shirts, 2 T-shirts, a sweatshirt, S1 safety shoes e.s. Vasegus II
  low, ~293 EUR before VAT, ~338 with embroidered logos (embroidery price
  an estimate); office 4 polos and a softshell jacket, ~127 EUR. Ordering:
  Strauss ships outside Germany where customs law allows, shipping quoted
  with the order, prepayment, duty and taxes charged to the recipient;
  Thai duty on work trousers 13.8 %, BOI does not cover clothing. About
  9k USD (~0.3M THB) a year at the start fleet. Check lighter lines for
  the press hall heat with samples.
- revenue-model.md: workwear noted on top of the x1.3.
- Fleet calculator: workwear line under labour (production and office
  kits a year, shipping and Thai duty), six new assumptions; 8,573 USD a
  year at the defaults.
2026-10-10 20:46:27 +07:00
grabowski 8032e0ea47 BOI: machinery import duty and import VAT, PVC duty relief
Deploy test site / deploy (push) Successful in 35s
User, October 2026: take the BOI duty-free import and VAT exemption into
consideration.

- boi.md: import VAT goes with the BOI duty exemption (Revenue Department
  answer on the BOI OSOS FAQ, checked October 2026); what it is worth:
  ~2.75M USD of imported machinery at the start fleet (block midpoints)
  would otherwise carry ~5 % duty (Thai MFN averages 4.1 % on HS 8477,
  0 to 10 % across HS 84; estimate until the HS codes are set), ~0.14M
  USD, and 7 % import VAT, ~0.2M paid at the border and recovered later
  as input tax, mostly as a refund claim since exports are zero-rated.
- total-investment.md: the blocks are vendor prices without duty or
  import VAT, so the headline already assumes promotion.
- Fleet calculator: BOI promoted / not promoted switch and export share.
  Not promoted adds the machinery duty to capex and depreciation, shows the
  import VAT as cash at the border, and charges duty on imported PVC
  compound; promoted exempts both, with no compound duty on exported
  records and 90 % off for domestic sales (sections 36(1) and 30). A note
  under the KPIs shows what promotion saves either way. Defaults: payback
  3.1 years with BOI, 3.2 without; adverse case operating result -31k
  with BOI, -68k without. CIT and BOI CIT exemptions still not modelled.
2026-10-10 20:29:32 +07:00
grabowski 1a368287f8 Labour from base salaries; health care with check-ups for all staff
Deploy test site / deploy (push) Successful in 34s
User, October 2026: option to enter base salaries; the company should
provide proper extra health care with check-ups for all staff.

- worker-safety.md: new "Health care for all staff" policy (decided
  October 2026): group health insurance (inpatient and outpatient) and a
  yearly check-up for everyone, office included, on top of social
  security; the occupational checks Thai law requires for risk-factor
  work (Ministerial Regulation B.E. 2547: within 30 days, then yearly, by
  an occupational physician, records kept 2 years after the job ends) for
  the press floor, galvanics and maintenance; planning costs with sources
  checked October 2026 (group insurance ~8,000 to 18,006 THB a head a
  year, plan ~15,000; Rajavej Chiang Mai check-ups 1,290 to 5,990 THB,
  plan ~2,500 plus ~1,500 risk-factor tests, estimates); social security
  5 % up to the 17,500 THB ceiling since 1 January 2026.
- revenue-model.md: cutting engineer 50,000 THB is base salary; health
  care on top of the x1.3 (~0.35M THB a year at the start fleet); what the
  x1.3 is made of.
- Fleet calculator: base salaries per role (the revenue model loaded
  rates / 1.3; cutting engineer 50,000), employer social security 5 %
  capped at 17,500, 25 % overtime, bonus and PPE, health insurance and
  check-ups for all staff incl. 4 office staff (scale.md 3 to 5), risk-
  factor tests for the press floor, galvanics and maintenance; all as
  editable assumptions; people table gains office and all-staff rows.
  Defaults: labour 5.25M THB (was 4.67M loaded), direct cost 1.90 USD a
  record, EBITDA 2.19M USD.
2026-10-10 20:17:39 +07:00
grabowski eac45eb234 Lacquer blank 70 EUR and cutting engineer 50,000 THB a month
Deploy test site / deploy (push) Successful in 39s
Team figures, October 2026:
- revenue-model.md: a lacquer blank costs about 70 EUR, one per side, so
  ~160 USD a two-sided title before recuts; a cutting engineer costs about
  50,000 THB a month;
- fleet calculator: the lacquer assumption is now in EUR (70, one per
  side, converted at 1.155 USD per EUR; styli and recuts not included)
  and the cutting engineer 50,000 THB a month, both marked as team
  figures instead of estimates. At the defaults lacquers come to ~54k USD
  a year and direct cost to 1.88 USD a record (was 1.86).
2026-10-10 20:12:26 +07:00
grabowski ce1d71e0b5 Fleet calculator: material, energy and labour cost, revenue and P&L
Deploy test site / deploy (push) Successful in 36s
User, October 2026: add calculation for material cost, PVC, carton,
chemicals, labour etc. and revenue from sales.

New "Money a year" card (and a "Prices and money" input card):
- revenue: standard records at the standard price, specials with the
  premium, title services per title (revenue-model.md 3.50 to 4.60
  blended, +0.60 to 1.70, 580 to 1,730 USD a title);
- materials and packaging: PVC from the compound tonnage (rejects in,
  trim back as regrind), labels per pressed record, inner sleeves,
  printed jackets, shrink wrap, shipping cartons (estimate), maintenance;
- stamper making: lacquer blanks and styli per side (estimate), nickel,
  silver and chemistry per electroformed part (revenue model: 60 to 150
  USD a three-generation set);
- energy from the fleet: machines, chiller and compressors at the hours
  run plus an estimated base load, roof PV off, PEA 3.2.2 blended rate and
  demand charge; steam from the presses running time at the biomass heat
  price (biomass.md); the start fleet lands in scale.md 4.3 to 6.4M THB;
- loaded labour per role (revenue-model.md wages; cutting engineer an
  estimate), headcount now also counts QC, maintenance and cutting;
- overheads, EBITDA, depreciation of capex (total-investment.md start
  fleet plan plus or minus each Duplex system and Classic), operating
  profit, payback; per-record cost bar;
- Adverse / Central / Favourable presets from the revenue model ranges,
  USD / THB / EUR display; ladder gains revenue and EBITDA columns.
At the defaults (1 M records, 20 % specials): revenue 4.42M USD, direct
cost 1.86 USD a record (revenue model central 1.94), EBITDA 2.23M.

README bullet; revenue-model.md links the calculator from its operating
picture.
2026-10-10 19:41:08 +07:00
grabowski 7d7a378c8b Fleet calculator: machine park schematic with the stamper line feeding it
Deploy test site / deploy (push) Successful in 34s
User, October 2026: add a visualization of the machine park and the
connected stamper production to the tool.

- New card "Machine park and stamper production": one live SVG that
  follows every input. Top: the stamper line, lathe, Pheenix PASU, PPPU,
  PDPU (2 cells), PMPB, Sibert VSF, VSP, VSC, each with its count, flow a
  day and how busy it is. Middle: the press hall, each Duplex cell drawn as
  in the cell sketch (presses either side of the operator, EX 50 and EX 35
  behind, trimmer in front) and each Classic with its built-in extruder,
  wrapping into rows and scaling down for big fleets; compound in on the
  left, stamper rack in and finishing out on the right. Bottom: central
  hydraulics, boiler, cooling, air and electrical piped up into the hall,
  amber where they exceed the plant as planned today.
- Stamper production is now counted per station from the cycle times in
  galvanics.md (silvering, pre-plate four at a time, father, mother,
  stamper plus handling per PDPU cell, PMPB, Sibert steps; usable share of
  the hours 80 %, estimate) instead of a flat 20 to 32 parts per PDPU.
  At the defaults: 1 PDPU at ~43 % busy, as galvanics.md concludes.
  New assumptions with sources; the lathe rate (8 sides a day) is an
  estimate.
- Requirements table: per-station counts and load; the URL hash now also
  reloads in an open tab (hashchange).

Checked headless in Edge, both themes: no JS errors, no text overlap or
overflow in the schematic at the default, 8 M and 30 M records, no
horizontal overflow at 390 px.
2026-10-10 19:30:05 +07:00
grabowski 6df1301fb9 Site: light and dark mode for the landing page, plant overview and fleet calculator
Deploy test site / deploy (push) Successful in 36s
User, October 2026: add bright/dark mode to the site for both tools.

- Each page sets data-theme on <html> before first paint: the saved choice
  (localStorage "cnx-theme", shared by all cnxvinyl.lol pages) or, without
  one, the system setting (prefers-color-scheme), which it keeps following
  until the user picks a mode. Toggle: header button (sun / moon).
- Plant overview: light overrides for every SVG class; pipe colours are
  now CSS variables (--p-*), used by the pipes and the legend, darkened in
  light mode where the dark-mode tints were too pale (DI water, granulate,
  stamper sets, cooling return); press state text and the VEX zone fills
  use variables instead of inline hex, so they flip with the theme.
- Fleet calculator and landing page: light palettes; input, flag, badge
  and ladder-highlight colours moved to variables.

Checked headless in Edge: both system schemes pick the right mode, the
toggle persists across pages, computed colours flip (press text, zones,
pipes, legend), no text overflow in either mode, no JS errors.
2026-10-10 18:27:58 +07:00
grabowski c6bec71442 Press fleet calculator: target output and specials share to fleet mix and needs
Deploy test site / deploy (push) Successful in 37s
User, October 2026: calculations for the later business plan, starting
from 2 Duplex + 1 Classic at 3 records a minute per Duplex and 2 per
Classic, as an interactive tool on the website: pick the yearly output
and the share of splatter/specials, get the machine mix and all the
requirements (people, hydraulics, power, ...).

docs/fleet-calculator.html (single static page, no dependencies):
- target mode sizes the fleet (specials only on Duplex with its EX 35;
  grow with Classics or with Duplex systems; start fleet as the floor);
  fleet mode takes a fleet and gives its output at the specials share;
- output, capacity, utilisation and the mix bar per machine type;
- needs: people per shift and in total, galvanics operators, machines,
  connected kVA and average kW, MWh/yr, central hydraulics (flow, motor,
  oil, accumulator), steam, cooling and cooling water, compressed air,
  press floor, room climate, compound, trim, titles, electroformed parts
  and plating units; checks against the 400 kg/h boiler, 250 kW chiller
  and the 870 m2 Payap press hall;
- ladder from the start fleet to a full Payap press hall, click to load;
- every assumption editable with its source (Newbilt Duplex site
  requirements V14 and offer 240620-04, scale.md, galvanics.md, revenue
  model, Payap model; estimates labelled), shareable link via the hash.
The Classic counts as one HRP 12 press plus one extruder until Newbilt
states figures (Toolex Alpha leaflet as a cross-check).

Site: DEMOS entry (/demos/fleet-calculator/) and landing-page entry.
README bullet and layout line; backlinks from scale.md (capacity) and
pressing-line.md (current plan).
2026-10-10 18:21:47 +07:00